[英]How to properly implement Hibernate connection factory with connection pool
我想使用Hibernate實現連接池。 這是我的配置文件:
<hibernate-configuration>
<session-factory>
<property name="hibernate.show_sql">true</property>
<property name="hibernate.format_sql">true</property>
<property name="jndi.url">jdbc/sqliteDB</property>
<property name="hibernate.dialect">org.hibernate.dialect.SQLiteDialect</property>
<property name="hibernate.connection.driver_class">org.sqlite.JDBC</property>
<property name="hibernate.connection.release_mode">auto</property>
<property name="current_session_context_class">thread</property>
<property name="hibernate.connection.autoReconnect">true</property>
<property name="hibernate.hbm2ddl.auto">update</property>
<mapping class="com.web.models.SystemUsers"/>
</session-factory>
</hibernate-configuration>
我試圖實現這個工廠類:
public class HibernateUtil
{
private static final SessionFactory sessionFactory;
private static ServiceRegistry serviceRegistry;
static
{
try
{
StandardServiceRegistry standardRegistry
= new StandardServiceRegistryBuilder().configure("hibernate.cfg.xml").build();
Metadata metaData
= new MetadataSources(standardRegistry).getMetadataBuilder().build();
sessionFactory = metaData.getSessionFactoryBuilder().build();
}
catch (Throwable th)
{
System.err.println("Enitial SessionFactory creation failed" + th);
throw new ExceptionInInitializerError(th);
}
}
public static SessionFactory getSessionFactory()
{
return sessionFactory;
}
}
當我運行2個請求時,我得到錯誤工廠關閉。 可能我的代碼未正確實施?
您沒有配置與數據源的連接。 代替:
<屬性名稱=“ jndi.url”> jdbc / sqliteDB </ property>
應該 :
<property name =“ hibernate.connection.datasource”> java:comp / env / jdbc / sqliteDB </ property>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.