hibernate在Dao中删除一个对象如何写
5个回答
展开全部
必须有一个东西可以定位到是数据表中的某一条数据,否则是无法删除的,当然了,是否主键id无所谓,但必须要保证唯一能定位。就像一堆数据,你想怎么删除其中一条,肯定是根据某些条件知道这条数据的吧,这个条件就是id或者自己定义的一些参数。
这个load,delete,update都是方法,可以自己写这种方法,尔后调用的。一般是按F3健查看源码方法。比方说你定义一个 Aid,点击按钮获得一个id,然后将你得到的id赋值给你定义的Aid,之后你用getHibernateTemplate().load(Person.class, Aid); 就好了。而且也必须这样才能实现我们所用的。你那个new Integer(1) 是重新生成的一个id。new Integer(1),就是一参数,实际上由自己获取。至于删除 确实要delete,假设要删除,先加载再删除时可以的。也可以这样写getHibernateTemplate().delete(Person.class, Aid); 前提是要找出这个delete方法。你把DAO中的这个方法贴出来,然后改一下就应该可以了。
这个load,delete,update都是方法,可以自己写这种方法,尔后调用的。一般是按F3健查看源码方法。比方说你定义一个 Aid,点击按钮获得一个id,然后将你得到的id赋值给你定义的Aid,之后你用getHibernateTemplate().load(Person.class, Aid); 就好了。而且也必须这样才能实现我们所用的。你那个new Integer(1) 是重新生成的一个id。new Integer(1),就是一参数,实际上由自己获取。至于删除 确实要delete,假设要删除,先加载再删除时可以的。也可以这样写getHibernateTemplate().delete(Person.class, Aid); 前提是要找出这个delete方法。你把DAO中的这个方法贴出来,然后改一下就应该可以了。
展开全部
hibernate通过id来进行db操作删除记录的,删除方法如下:
publicstatic void delete(Object obj) {
Session session = null;
Transaction tx = null;
try {
session =HibernateUtil.getSession();
tx =session.beginTransaction();
session.delete(obj);
tx.commit();
} finally {
if (session != null) {
session.close();
}
}
}
publicstatic void delete(Object obj) {
Session session = null;
Transaction tx = null;
try {
session =HibernateUtil.getSession();
tx =session.beginTransaction();
session.delete(obj);
tx.commit();
} finally {
if (session != null) {
session.close();
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1、session.delete(object)
2、session.createQuery(HQL 删除语句).......
3、session.createSQLQuery(sql语句)....
自己选一种吧
2、session.createQuery(HQL 删除语句).......
3、session.createSQLQuery(sql语句)....
自己选一种吧
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
给你几点提示:
1、session.delete(object)
2、session.createQuery(HQL 删除语句).......
3、session.createSQLQuery(sql语句)....
自己选一种适合的吧
1、session.delete(object)
2、session.createQuery(HQL 删除语句).......
3、session.createSQLQuery(sql语句)....
自己选一种适合的吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
void deleteSth(User u){
/////////////////
//第一种
session.delete(u);
//第二种
session.createQuery("delete from User u where u.userId=?").setParameter(0,u.getUserId).executeUpdate();
}
/////////////////
//第一种
session.delete(u);
//第二种
session.createQuery("delete from User u where u.userId=?").setParameter(0,u.getUserId).executeUpdate();
}
追问
第一种刚学完,我要带返回值的
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询