关于SSH中DAO层的增删改查

我刚学SSH,老师教的是这样的:增加:publicXiaoshoudoSave(Xiaoshouxiaoshou){Xiaoshouxiaoshous=null;Sess... 我刚学SSH,老师教的是这样的:
增加:
public Xiaoshou doSave(Xiaoshou xiaoshou){
Xiaoshou xiaoshous= null;
Session session = sessionFactory.openSession();
Transaction tx = null;
try {
tx = session.beginTransaction();
session.save(xiaoshou);
tx.commit();
return xiaoshous;
} catch (HibernateException e) {
// TODO Auto-generated catch block
tx.rollback();
e.printStackTrace();

}finally{
session.close();
}
return xiaoshous;
}
查询:
public Xiaoshou doFindbyId(int id){
Xiaoshou xiaoshou = null;
Session session = sessionFactory.openSession();
try {
String hql = "select Xiaoshou as x where x.id=" + id;
Query query = session.createQuery(hql);
xiaoshou = (Xiaoshou) query.uniqueResult();
} catch (HibernateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
session.close();
}
return xiaoshou;
}
但我网上看到的例子怎么是这样的:
查询:public List findById(final Integer id){

return (List) this.getHibernateTemplate().execute(new HibernateCallback(){

public Object doInHibernate(Session session)
throws HibernateException, SQLException {
return session.createQuery("from Cust c where c.id='"+id+"'").list();
}});
}
这继承了HibernateDaoSupport之后就能这么写吗,请问还有增删改在继承了HibernateDaoSupport之后怎么写,请麻烦写下代码,谢谢了
展开
 我来答
鸿哥很忙
2012-04-10 · TA获得超过759个赞
知道小有建树答主
回答量:204
采纳率:100%
帮助的人:133万
展开全部
我不赞成(568145421)的说法,谁说不能返回一个集合啊,没错,按常理来说,用户名和密码匹配都是唯一的,是可以返回一个实体。但是返回一个集合错了吗?这个集合保存了一个用户的数据不行吗?显然是可以返回一个集合的。
你在网上看到的那种还行,这样子就不要你在手动的提交事务了。增删改和以前的还是一样的。可以用update、delete、save的。反正用spring来管理hibernate就必须继承HibernateDaoSupport这个类。
Storm代理
2023-08-29 广告
"StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,I... 点击进入详情页
本回答由Storm代理提供
568145421
2012-04-10 · 知道合伙人软件行家
568145421
知道合伙人软件行家
采纳数:1353 获赞数:6755

向TA提问 私信TA
展开全部
你好,你的写法是教科书版的,标准,经得起推敲。先说你网上看到的存在的不合理性,按id查询,是不可能获得一个集合的,除非数据库设计的不合理。还有你也不要着急,既然有老师教,那你就慢慢学。这些东西底层都一样,别管它用什么写法。
继承了HibernateDaoSupport就是省事了,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zxgPHP
2012-04-10
知道答主
回答量:19
采纳率:100%
帮助的人:12.6万
展开全部
与很多方式,给你几种简单的:修改或者增加: getHibernateTemplate().saveOrUpdate(user);
删除: Object p = getHibernateTemplate().load(User.class, new Integer(userid));
getHibernateTemplate().delete(p);
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
whw378
2012-04-12 · 超过53用户采纳过TA的回答
知道小有建树答主
回答量:258
采纳率:0%
帮助的人:176万
展开全部
等你学了spring 再来用。 这是spring的内容
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式