Playを使用して同じプロジェクトのユーザーMySQL Database
とMongoDb
データベースを作成することは可能ですか?フレームワーク?
例:欲しい
@Entity Person to interact with my MySQL database and
@Entity PersonData to interact with my MongoDB database?
どうやってやるの?
教えてください
ありがとうございます
Playを使用して同じプロジェクトのユーザーMySQL Database
とMongoDb
データベースを作成することは可能ですか?フレームワーク?
例:欲しい
@Entity Person to interact with my MySQL database and
@Entity PersonData to interact with my MongoDB database?
どうやってやるの?
教えてください
ありがとうございます
はい、可能です。Play用のMorphiaプラグインを使用するだけです。私は前にそれをしました。とても簡単です。
MongoDBモデルの場合は、次のようにします。
import play.modules.morphia.Model;
@Entity
public class YourMongoModel extends Model {
...
}
MySQLモデルの場合、次のようにします。
import play.db.jpa.Model;
@Entity
public class LogMessageX extends Model {
...
}
異なるインポートに注意してください。
次に、application.confファイルには次のようなものが含まれている必要があります。
# For MongoDB
morphia.db.host=localhost
morphia.db.port=27017
morphia.db.name=YourMongoDBName
# for MySQL
db=mysql:user:pwd@database_name
MySQLエンティティでModelを拡張し、JPAアノテーション(@Entity)を追加します。
Mongoの場合、次のようなサードパーティのモジュールを使用する必要があります: http ://www.playframework.org/modules/mongo-1.3/home
例:
@MongoEntity( "collectionName")
パブリッククラスCarはMongoModelを拡張します{
public String name;
public String colour;
public int topSpeed;
}
PlayのJPAプラグインは、JPA @Entityアノテーションがないため、Mongoクラスを変更しません。
興味のある人は、PlayのJPAEnhancerをチェックしてください。javaassistを使用してバイトコードを変更し、すべてのメソッドimplsを追加します-非常にクールです!