我将我的应用程序连接到DB和Hibernate,花费大量时间连接到数据库。如何为远程db连接配置persistence。
这是我的persistence.xml
<properties>
<property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/temp"/>
<property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>
<property name="hibernate.connection.username" value="user"/>
<property name="hibernate.connection.password" value="user03022016"/>
<property name="hibernate.archive.autodetection" value="class"/>
<property name="hibernate.show_sql" value="true"/>
<property name="hibernate.format_sql" value="true"/>
<property name="hbm2ddl.auto" value="update"/>
</properties>这是我的函数,它调用连接并发送查询
public List<Posts> connect() throws UnsupportedEncodingException {
EntityManager em=EntityManagerUtil.getEntityManagerFactory().createEntityManager();
Query q=em.createQuery("Select p from Posts p");
result=q.getResultList();
return result;
}发布于 2016-03-30 08:50:22
您是否配置了外部连接池,还是使用内置连接池?如果您使用内置的一个,这可以解释为什么它花了4秒来获得一个连接,在最坏的情况下,必须创建一个新的,这是昂贵的。
可能尝试配置外部连接池,如下所述:https://docs.jboss.org/hibernate/orm/4.2/devguide/en-US/html/ch01.html
发布于 2016-03-30 07:06:37
为了在一般情况下加快速度,将hibernate.show_sql和hibernate.format_sql更改为false。对于连接,只需使用以下属性:
<property name="hibernate.temp.use_jdbc_metadata_default" value="false"/>这将使您的会话构建得更快。
https://stackoverflow.com/questions/36301767
复制相似问题