SSH框架怎样执行删除的SQL语句

k_c_u_f 2016-01-13 05:33:08
比如delete * from table where userid=001,这样的SQL语句应该写在DAOImpl类里面吧,但是应该怎样去执行呢?
...全文
340 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
码上大侠 2016-01-14
  • 打赏
  • 举报
回复
如果id是主键的话,把id封装到对象里,然后用this.getHibernateTemplate().delete(entity);也是可以删除的
hqq1007 2016-01-14
  • 打赏
  • 举报
回复
引用 9 楼 hqq1007 的回复:

String hql = "update Student s set s.name= ? where s.id < ?";
Query query = session.createQuery(hql);
query.setString(0, "buibui");
query.setInteger(1, 10);
int size = query.executeUpdate();
String hql delete from Student s where s.id = ? 上面写错了,删除应该是这样
hqq1007 2016-01-14
  • 打赏
  • 举报
回复

String hql = "update Student s set s.name= ? where s.id < ?";
Query query = session.createQuery(hql);
query.setString(0, "buibui");
query.setInteger(1, 10);
int size = query.executeUpdate();
奔跑的鱿鱼 2016-01-14
  • 打赏
  • 举报
回复
建议楼主去看下jdbc 就会明白
Earl_yuan 2016-01-14
  • 打赏
  • 举报
回复
引用 4 楼 k_c_u_f 的回复:
[quote=引用 1 楼 Earl_yuan 的回复:]
你调用DAOImpl的时候就会执行啊,还是你的意思是底层是如何执行的


查询是这样的:
this.getHibernateTemplate().find(hsql);
删除应该是怎样执行的啊?[/quote]

哦,我明白你啥意思了,你意思是如何使用this.getHibernateTemplate()来进行删除操作吧。
查阅spring的API文档可以看到,this.getHibernateTemplate()返回HibernateTemplate类型,HibernateTemplate有如下的删除方法:
k_c_u_f 2016-01-14
  • 打赏
  • 举报
回复
引用 5 楼 u011120983 的回复:
[quote=引用 4 楼 k_c_u_f 的回复:] [quote=引用 1 楼 Earl_yuan 的回复:] 你调用DAOImpl的时候就会执行啊,还是你的意思是底层是如何执行的
查询是这样的: this.getHibernateTemplate().find(hsql); 删除应该是怎样执行的啊?[/quote] this.getHibernateTemplate(),除了这个不是还有this.getsession吗。有delete方法的,还有this.getsession.createSQLquery()好像是执行原生态的SQL语句的[/quote] 能返回一个列表/结果集吗?
我要爆炸啦 2016-01-14
  • 打赏
  • 举报
回复
引用 4 楼 k_c_u_f 的回复:
[quote=引用 1 楼 Earl_yuan 的回复:] 你调用DAOImpl的时候就会执行啊,还是你的意思是底层是如何执行的
查询是这样的: this.getHibernateTemplate().find(hsql); 删除应该是怎样执行的啊?[/quote] this.getHibernateTemplate(),除了这个不是还有this.getsession吗。有delete方法的,还有this.getsession.createSQLquery()好像是执行原生态的SQL语句的
k_c_u_f 2016-01-14
  • 打赏
  • 举报
回复
引用 1 楼 Earl_yuan 的回复:
你调用DAOImpl的时候就会执行啊,还是你的意思是底层是如何执行的
查询是这样的: this.getHibernateTemplate().find(hsql); 删除应该是怎样执行的啊?
我要爆炸啦 2016-01-14
  • 打赏
  • 举报
回复
引用 6 楼 k_c_u_f 的回复:
[quote=引用 5 楼 u011120983 的回复:] [quote=引用 4 楼 k_c_u_f 的回复:] [quote=引用 1 楼 Earl_yuan 的回复:] 你调用DAOImpl的时候就会执行啊,还是你的意思是底层是如何执行的
查询是这样的: this.getHibernateTemplate().find(hsql); 删除应该是怎样执行的啊?[/quote] this.getHibernateTemplate(),除了这个不是还有this.getsession吗。有delete方法的,还有this.getsession.createSQLquery()好像是执行原生态的SQL语句的[/quote] 能返回一个列表/结果集吗?[/quote] ??为什么删除要返回一个列表集?我搞不懂你想实现什么。
qq_27394335 2016-01-13
  • 打赏
  • 举报
回复
在底层的dao 方法中,会执行hql 语句执行删除
qq_33734878 2016-01-13
  • 打赏
  • 举报
回复
SQL语句由hibernate执行,底层是JDBC
Earl_yuan 2016-01-13
  • 打赏
  • 举报
回复
你调用DAOImpl的时候就会执行啊,还是你的意思是底层是如何执行的

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧