簡體   English   中英

當插入查詢失敗或發生異常時,Hibernate 從二級緩存中刪除所有緩存對象 - 如何防止它。請提出建議

[英]Hibernate remvoves all cached objects from second level cache when insert query is failed or when excpetion occures - how to prevent it.please suggest

當插入查詢失敗或發生異常時,Hibernate 從二級緩存中刪除所有緩存的對象 - 如何防止它。請提出建議

    public Response createOrUpdateRouting(Routing request) {
`Transaction tr = null;`

    appLog = AppLog.getAppLog();

    response = new Response();

if (null != this.sessionFactory) {
session = this.sessionFactory.openSession();
} else if (this.sessionFactory == null) {
sessionFactory = HibernateUtil.getSessionFactory();
session = this.sessionFactory.openSession();
}
try {
tr = session.beginTransaction();
session.save(request);
response.setStatus(Status.SUCCESS);
response.setResponseCode(HttpStatus.SC_OK);
if(null != request && request.getId() > 0){
response.setResponseMsg(Constants.UPDATE_MSG);
}else{
response.setResponseMsg(Constants.SUCESS_MSG);
}
session.flush();
tr.commit();
} catch (Exception ex) {
tr.rollback();
appLog.error("Exception occurred in createOrUpdateRouting", ex);
response.setStatus(Status.FAILURE);
response.setResponseCode(HttpStatus.SC_INTERNAL_SERVER_ERROR);
response.setResponseMsg(ex.getMessage());
} finally { 
session.close();
}
return response;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM