Hibernate动态修改数据
- 在dao层用可变数组
- 在xxx.hbm.xml中配置query标签,参数name就是queryName的名称
- 在service层中getTele没有执行queryName的方法,只能通过getSession获取当前session对象。通过for循环进行配置。
案例:修改密码
1. ajax发送请求到Action中进行修改密码。
2. Action是Controller层,控制层注意,尽量不要处理数据,把数据传递到service层去
2.1数据不要操作,传递数据到service再进行操作,需要用户id,password等数据
注意:获取user,因为是Action中获取,这个是无法避免的。
3. Service处理好数据,调用Dao层,进行数据库操作。
3.1Dao层写一个通用的更新方法,这里注意,通用的所以是在BaseDao里面
在这无法使用this.getHibernateTemplate().xxx方法,queryName只能通过this.getSession()进行获取gestNameQuery();
queryName的查询语句是在实体类 xxx.hbm.xml中编写的,需要十分注意,不要写错了。如果写错了,一般错误提示会说sessionFactory出现问题,经验之谈。
3.2Service调用的时候注意,字段顺序不要传入错误了。
3.3执行查询后需要将,执行后受到影响的行数返回,判断是否为0,如果为0需要进一步考虑是什么情况造成的。
原文地址:https://www.cnblogs.com/xyyz/p/8452504.html
时间: 2024-10-29 11:17:15