我是靠谱客的博主 无心萝莉,最近开发中收集的这篇文章主要介绍org.hibernate.service.UnknownServiceException异常解决办法org.hibernate.service.UnknownServiceException异常,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
org.hibernate.service.UnknownServiceException异常
查了很久的原因,发现是调用的两个方法,都要开启 sessionFactory!
解决办法是将前面一个调用的方法中的 sessionFactory 最后置为空,sessionFactory = null;或者将session给close()掉!
在下一个方法中就能重新调用了,成功解决.
如果不关闭 SessionFactory 可能会使系统变卡,原因可能是在每个方法中都重新 new 了一个SessionFactory对象.所以,我们可以考虑将 SessionFactory 重用.
public class MyHibernateSessionFactory {
private final static Configuration configuration = new Configuration().configure();
private final static ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).build();
private final static SessionFactory sessionFactory = configuration.buildSessionFactory(serviceRegistry);
private MyHibernateSessionFactory() {
}
public static Session getSession() {
return sessionFactory.openSession();
}
private static class SingletonHolder {
private final static MyHibernateSessionFactory INSTANCE = new MyHibernateSessionFactory();
}
public static MyHibernateSessionFactory getInstance() {
return SingletonHolder.INSTANCE;
}
}
在外部重新定义,然后在方法中调用:
public Users SearchUser() {
Session session = MyHibernateSessionFactory.getSession();
Transaction tx = session.beginTransaction();
try{
//do something
}catch(Exception ex){
//do something;
}finally{
tx = null;
session.close();
}
}
这样就解决了.
最后
以上就是无心萝莉为你收集整理的org.hibernate.service.UnknownServiceException异常解决办法org.hibernate.service.UnknownServiceException异常的全部内容,希望文章能够帮你解决org.hibernate.service.UnknownServiceException异常解决办法org.hibernate.service.UnknownServiceException异常所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复