[英]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.