您的位置:程序门 -> java -> j2ee / ejb / jms



刚学hibernate,关于删除和更新操作有点问题想请教。谢谢各位大侠!!!!!!


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


刚学hibernate,关于删除和更新操作有点问题想请教。谢谢各位大侠!!!!!![已结贴,结贴人:dvd_collector]
发表于:2007-09-10 11:03:26 楼主
删除和更新是否只能根据id来进行?如果表单中没有id,能否根据其他字段来进行删除和更新?如果能,应该怎样做?
比如说有:id,name,email三个字段,我想通过name来进行删除和更新,delete()和update()应该怎样写??
谢谢各位大侠!!!!!!!
发表于:2007-09-10 12:17:521楼 得分:10
可以的   delete()update()方法可以传hql语句的
注意hql语句操作的是对象不要和sql混淆就可以了
发表于:2007-09-10 13:42:362楼 得分:3
session   session   =   sessionfactory.opensession();
string   sql= "delete     customer   c   where   c.name=:oldname ";
int   deletecount   =   session.createquery(sql)
                                    .setstring( "oldname ",oldname)
                                    .EXECuteupdate();
session.close;

update跟这个一样,就是sql的内容不同
这些书上都有,回去好好看看书吧
发表于:2007-09-10 15:38:383楼 得分:0
该回复于2007-12-28 11:57:55被管理员或版主删除
发表于:2007-09-11 09:44:244楼 得分:0
to:godfather521()  
delete()方法不可以传string参数(update()也是),你能不能给个简单的例子,谢谢。
发表于:2007-09-11 09:59:195楼 得分:5
如果你配置过*.hbm.xml文件的话..直接可以传进来个bean.
没加spring框架的时候如下做法:
session   session   =   hibrenatesessionfactory.getsession();(创建一个session)
transaction   t   =   session.begintransaction();(创建一个事物)
session.delete(bean);(删除)
session.update(bean);(更新)
t.commit();(事物提交)
session.close();(session关闭)
发表于:2007-09-11 10:13:076楼 得分:0
to:xia20021()  
这么做的话是不是通过bean中的id属性来进行删除和更新啊?
但是我现在不想通过id属性来操作,想通过其他字段。
发表于:2007-09-12 17:52:287楼 得分:0
怎么没人呢????
发表于:2007-09-12 18:02:368楼 得分:2
用hql语句啊。增删改查都有啊!


快速检索

最新资讯
热门点击