2009-07-06 2 views
5

私はいくつかのテーマをテーマにする必要がある単一のサイトを持つつもりです。新しいテーマが必要になるたびに再デプロイしなくても済むように、テーマ情報をデータベースから取り出す必要があります。カスタムのThemeSource実装を作成することはできますが、データベース駆動のテーマソースを実装する方法は不明でした。 Spring MVCでこれを経験した人は誰ですか?Spring MVCのデータベースからテーマをロードするには?

答えて

2

これは簡単です。

スプリングコントローラでは、フィルタコントローラはワイヤリングが容易ではありません。

  • テーマをシンプルにします(1つのCSSファイル、1つのjsファイル、2つの画像)。

  • データベースにthemeおよびthemeresourceテーブルを作成します。テーマには、theme_id、theme_name、theme_descriptionが含まれます。 themeresourceにはresource_id、theme_id、name、content(blob)が含まれています。

  • は(私が休止状態を使用したい)

  • ThemeControllerと呼ばれるコントローラを作成し、テーマにアクセスするためのDAOを作成します(私は、Hibernateを使用すると思います)。それを "/ theme/resources"にマップします。

  • コントローラで要求を読み、要求しているファイル(例: "/theme/resources/style.css")を確認します。

  • あなたは既にために必要とされるものをテーマに知ってThemeResolver

  • テーマとリソース名でDAOを照会することにより、データベースから「あるstyle.css」ファイル(および他のすべてのファイル)をサーブ

もう1つのオプションは、上記のコントローラーが行うべきことをまさに行うリスナー/フィルターを作成することです。

関連する問題