8

私は、グライルに関しては完全な初心者です(そして、グルーヴィーに関してはまだ非常に初心者です)ので、これがばかげた質問である場合はお詫び申し上げます。

単純なWebアプリを構築していて、データベースデータではなく、ファイルシステムオブジェクト(つまり、ディレクトリ構造とファイルタイプ)に基づいてアプリ内のドメインの一部を制御したいと考えています。これを行うのはどれほど簡単ですか、それともドメインオブジェクトがGORMと非常に絡み合っているため、試す価値がありませんか?

4

4 に答える 4

9

私は数週間前に自分でこの質問に出くわしました。

次のスニペットをに追加するだけDomain Classです。

def isAttached() 
{
   return false
}

現在、データベースに接続されていません。出来上がり!

于 2012-10-17T02:20:44.310 に答える
4

次のものも使用できます。

class YourDomainClass {

    static mapWith = "none" // disable persistence for this domain class

grailsのドキュメントこの回答を参照してください。Grails 2.0.1で追加されたようですが、バージョン2.3.0まで文書化されていません。

于 2014-08-14T17:51:32.407 に答える
1

これを行うにはいくつかの方法があります。

まず、ファイルシステムデータにマップするプロパティを一時的なものとして宣言し、ゲッター/セッターが呼び出されたときにファイルシステムに移動できます(オーバーライドする必要があります)。常にメモリに保存する必要がある場合は、onLoadを使用してロードすることもできます。

2番目-Hibernateは永続性を処理します。Hibernateを使用すると、独自のユーザータイプを定義できます。これにより、永続性を任意の方法で処理できます。このようにすると、より透過的に発生する可能性があります(ただし、冬眠をかなりよく理解し、副作用がないことを確認する必要がありますが、よくわかりません)。

http://i-proving.com/space/Technologies/Hibernate/User+Types+in+Hibernate

于 2010-08-16T07:16:09.863 に答える
1

説明したように、ドメインクラスをファイルシステムオブジェクトにマップする組み込みの方法はありませんが、同様に、ドメインクラスをリレーショナルデータベースにマップする必要はありません。リレーショナルデータベースを使用しないGrailsアプリを作成する方法の主題は、 ここここ(そしておそらく他の場所)で扱われます。

于 2010-08-16T07:45:15.730 に答える