2011-07-30 16 views
1

Spring MVCとHibernateを使用してWebアプリケーションを開発しています.Webファイルとしてパッケージ化し、必要な場所にユーザーを配置するために配布したいと考えています。デフォルトのユーザーを持つSpring MVC Webアプリケーション

アプリケーションはデプロイメント前にデータベース接続の詳細が必要ですが、これを行う方法のベストプラクティスについてアドバイスできますか?現在私のdatabase.propertiesファイルはWARファイルの一部としてパッケージ化されていますが、WARファイルまたはソース内のこのファイルを手作業で編集してwarファイルをビルドすることをユーザーに求めるより簡単な方法はありますか?

私はユーザーが最初に簡単にデプロイしたときに単一の管理者ユーザーを簡単に作成できるようにしたいと思います。作成するためにSQLスクリプトを提供するのが最善です。最初にデプロイするとユーザーが作成されますか? Webアプリケーションは、「大量生産」に重点を置いていないので、そのようなことが可能である場合

おかげ

答えて

0

は、私が言うことができません。

すべてのCREATE文を含むSQLスクリプトを、既存のデータを削除しないように "IF NOT EXISTS"で制限することができます。 Hibernateは、SessionFactoryの作成時にsqlスクリプトを実行できます.Hibernateがclasspathルートにある "import.sql"という名前のファイルを見つけたら、Hibernateはそれを実行します。また、WARを再パッケージせずに、すでにデプロイされているアプリケーションのdatabase.propertiesを編集することもできます。

+0

ありがとうございます - 配備されている実行中のアプリケーションからdatabase.propertiesファイルを編集することは可能ですか?私はそれがメモリ内のDBセットアップにデフォルト設定できると思っていたので、ユーザーはデプロイしてログオンできました。そして、DBプロパティを編集して、Web UI管理パネルを介して正しいデータベースを指すようにできましたか? – rhinds

+0

申し訳ありませんが、私はあなたがアプリケーションを再起動する必要があると言ったように、設定を管理するためのページ(フォーム)を作成することができます。コンテキストの再起動はどうすればよいか分かりませんが、とにかくこれを解決することを願っています; – Jairo

0

Liquibase、http://www.liquibase.org/を試してください。ユーザーはデータベース接続の詳細を設定することはできませんが、データベーススキーマ(スキーマの作成と更新)とデフォルトデータを管理できます。

+0

ありがとうございます - これはアプリケーションdatabase.properties設定ファイルの制御に関する最初のシナリオにも対応していますか? – rhinds

+0

いいえ、実際はありません。私の答えはその部分では誤解を招くので、私はそれを編集します。しかし、いったんデータベース接続をセットアップすると、データベースが作成または更新され、デフォルトのデータが追加されます。 –

関連する問題