私は、グライルに関しては完全な初心者です(そして、グルーヴィーに関してはまだ非常に初心者です)ので、これがばかげた質問である場合はお詫び申し上げます。
単純なWebアプリを構築していて、データベースデータではなく、ファイルシステムオブジェクト(つまり、ディレクトリ構造とファイルタイプ)に基づいてアプリ内のドメインの一部を制御したいと考えています。これを行うのはどれほど簡単ですか、それともドメインオブジェクトがGORMと非常に絡み合っているため、試す価値がありませんか?
私は、グライルに関しては完全な初心者です(そして、グルーヴィーに関してはまだ非常に初心者です)ので、これがばかげた質問である場合はお詫び申し上げます。
単純なWebアプリを構築していて、データベースデータではなく、ファイルシステムオブジェクト(つまり、ディレクトリ構造とファイルタイプ)に基づいてアプリ内のドメインの一部を制御したいと考えています。これを行うのはどれほど簡単ですか、それともドメインオブジェクトがGORMと非常に絡み合っているため、試す価値がありませんか?
私は数週間前に自分でこの質問に出くわしました。
次のスニペットをに追加するだけDomain Class
です。
def isAttached()
{
return false
}
現在、データベースに接続されていません。出来上がり!
次のものも使用できます。
class YourDomainClass {
static mapWith = "none" // disable persistence for this domain class
grailsのドキュメントとこの回答を参照してください。Grails 2.0.1で追加されたようですが、バージョン2.3.0まで文書化されていません。
これを行うにはいくつかの方法があります。
まず、ファイルシステムデータにマップするプロパティを一時的なものとして宣言し、ゲッター/セッターが呼び出されたときにファイルシステムに移動できます(オーバーライドする必要があります)。常にメモリに保存する必要がある場合は、onLoadを使用してロードすることもできます。
2番目-Hibernateは永続性を処理します。Hibernateを使用すると、独自のユーザータイプを定義できます。これにより、永続性を任意の方法で処理できます。このようにすると、より透過的に発生する可能性があります(ただし、冬眠をかなりよく理解し、副作用がないことを確認する必要がありますが、よくわかりません)。
http://i-proving.com/space/Technologies/Hibernate/User+Types+in+Hibernate