プログラムで何も設定せずConfiguration configuration = new Configuration().configure();
、hibernate.properties (以下のように) を呼び出して使用すると、すべてがうまく機能します。プログラムでユーザー名、パスワード、および接続 URL を提供しようとするとすぐに、hbm ファイルを示唆する奇妙な例外が発生します。何が欠けていますか?
この作品
hibernate.connection.driver_class=com.mysql.jdbc.Driver
hibernate.connection.url=jdbc:mysql://myEC2/mCruiseOnServerDB?autoReconnect=true&failOverReadOnly=false&maxReconnects=10
hsqldb.write_delay_millis=0
shutdown=true
hibernate.connection.username=root
hibernate.connection.password=mypwd
hibernate.connection.pool_size=2
hibernate.dialect=org.hibernate.dialect.MySQLInnoDBDialect
hibernate.c3p0.idle_test_period=300
hibernate.c3p0.timeout=120
@Kshitijの推奨に従って。混合モードを実行します。
hibernate.propertiesは現在
hibernate.connection.driver_class=com.mysql.jdbc.Driver
hsqldb.write_delay_millis=0
shutdown=true
hibernate.connection.pool_size=2
hibernate.dialect=org.hibernate.dialect.MySQLInnoDBDialect
コード
String connection = "jdbc:mysql://"
+ Globals.DBSERVER
+ "/mCruiseOnServerDB?autoReconnect=true&failOverReadOnly=false&maxReconnects=10";
Configuration configuration = new Configuration()
.setProperty("hibernate.connection.url", connection)
.setProperty("hibernate.connection.username", Globals.DB_USER_NAME)
.setProperty("hibernate.connection.password", Globals.DB_PASSWORD);
configuration.configure();
sessionFactory = configuration
.buildSessionFactory(new ServiceRegistryBuilder()
.buildServiceRegistry());
例外
mapping resource
hbm ファイルのエントリごとに 1 つずつ、この例外が発生します。
11 May 2013 08:46:31,969 1300 [main] FATAL ReadOnlyOperations - Have chosen to ignore this runtime exception java.lang.UnsupportedOperationException: The application must supply JDBC connections, may be fatal, examine this carefully
11 May 2013 08:46:31,969 1300 [main] FATAL ReadOnlyOperations - java.lang.UnsupportedOperationException: The application must supply JDBC connections
概要
すべてを使用し、コードを使用しhibernate.properties
ない場合 (コードに .setProperty を使用しない場合)、すべてがうまく機能します。一部hibernate.properties
および一部のコード (サーバー、ユーザー名、パスワード) を使用すると、すべてのマッピング プロパティの hbm でエラーが発生します。
何が欠けているのかを理解するのを手伝ってくれる人が必要です。それは本当に基本的なものでなければなりません。