使用 HibernateTemplate 进行持久化操作 执行的时候不报错,但数据库的持久化操作没有一点作用,问了好多人,说没有声明事务和提交事务, 用的是别人搭的的架构,事务已经有了,自动提交事务的,所以和事务没有关系,,搞了好久最后终于知道怎么回事了,真是一个让人蛋疼的问题啊!

/**
* 删除该群里的所有用户(解散群聊)
* @author 80818647@qq.com
* @param groupId 群ID
*/
public void deletChatGroupUser(final long groupId) {
execute(new HibernateCallback<ChatGroup>() {
public ChatGroup doInHibernate(Session session) throws HibernateException {
session
.createSQLQuery("DELETE FROM user_chat_group WHERE chat_group_id=:groupId")
.setLong("groupId", groupId) //因为少了这行代码,所以导致一直不报错,但是数据库还没反应。
// **只要是手写SQL对数据库进行了更改最后都是要加入.executeUpdate(); 除了select以外
.executeUpdate(); return null;
}
});
}

  

 获取一个对象

    /**
* 获取群对象
* @author 80818647@qq.com
* @param  groupId 群ID
* @return ChatGroup( 群组对象) 当前用户在此群的信息
*/
public ChatGroup getChatGroupById(final long groupId) {
return execute(new HibernateCallback<ChatGroup>() {
public ChatGroup doInHibernate(Session session) throws HibernateException {
return (ChatGroup) session
.createSQLQuery("SELECT * FROM chat_group WHERE id=:groupId")
.addEntity(ChatGroup.class)
.setLong("groupId", groupId)
.uniqueResult(); //返回一个唯一结果 对象
}
});
}

count查询返回一记录数

    //注意返回的必须是BigInteger类型
public BigInteger getTotalCount(final long postCategoryId) {
return execute(new HibernateCallback<BigInteger>() {
public BigInteger doInHibernate(Session session) throws HibernateException {
return (BigInteger) session
.createSQLQuery("SELECT count(*) FROM post where deleted > 0 and published > 0 and post_category_id=:postCategoryId ")
.setLong("postCategoryId", postCategoryId)
.uniqueResult(); }
});
}

最新文章

  1. flock — 轻便的咨询文件锁定
  2. MySQL timestamp用法
  3. 关于easyui模拟win2012桌面的一个例子系列
  4. Bootstrap 分页插件 ajax获取数据显示
  5. C语言 rand()函数的用法
  6. Java6 WebService学习
  7. bzoj 5000: OI树
  8. JS精度问题(0.1+0.2 = 0.3吗?)
  9. 简单几步让网站支持https,windows iis下https配置方式
  10. Oracle 11g 的 自动内存管理
  11. 【转】python两个 list 获取交集,并集,差集的方法
  12. Python中的exec、eval使用实例
  13. funny
  14. CodeForces 727C
  15. SAS 报表输出一些新式控制
  16. 第七次Scrum冲刺
  17. vue框架(二)_vue环境搭建及创建项目
  18. DPDK无法分出大页面:EAL: No free hugepages reported in hugepages-2048kB 解决方法
  19. React-Router v4.0 hashRouter使用js跳转
  20. JS延迟执行

热门文章

  1. oracle长连接超时设置
  2. Vue.js学习笔记 第五篇 事件处理
  3. 第一章 安装MongoDB
  4. 修改和重置WAMP的phpMyAdmin密码
  5. POI技术实现对excel的导出
  6. 最长k可重区间集
  7. 【P1714】切蛋糕(单调队列)
  8. java中,return和return null有什么区别吗?
  9. lambda 中if-elif-if
  10. js中介者模式