博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Hibernate入门---总结:增删改----完整【第一天】
阅读量:5084 次
发布时间:2019-06-13

本文共 1803 字,大约阅读时间需要 6 分钟。

以下是封装了增删改的类,如下写法,不能同时调用增删、或者增改、删改数据。因为会话共享,并且每个方法内都不能关闭session,否则对后续方法调用会有影响。

package bean529;import hibernate.factory.HibernateSessionFactory;import org.hibernate.Session;import org.hibernate.Transaction;import bean.Customer;public class CustomerManager {    Session session = HibernateSessionFactory.getSession();    Transaction tran = session.beginTransaction();    //增加记录    public void addCustomer(String customerID,String name,String phone){        /**定义事务开始**/        //注解实体类        Customer dept = new Customer();        dept.setCustomerID(customerID);        dept.setName(name);        dept.setPhone(phone);        session.save(dept);        //提交事务        tran.commit();    }    //删除记录,通过id    public void delCustomer(String customerID) {        /**首先查找待删除记录,通过id**/        Customer dept = (Customer)session.get(Customer.class, "1003");        session.delete(dept);        tran.commit();    }    //修改记录,通过id先查找,后修改    public void updateCustomer(String customerID,String name,String phone) {        //首先查找待修改记录,通过id        Customer dept = (Customer)session.get(Customer.class, "1003");        dept.setName(name);        dept.setPhone(phone);        session.saveOrUpdate(dept);        tran.commit();        }    //测试    public static void main(String[] args) {        CustomerManager manager = new CustomerManager();         //manager.addCustomer("1003","we", "31231");        //manager.delCustomer("1003");         manager.updateCustomer("1003", "姓名被修改", "号码被修改");            }}

总结:如需要在控制台显示查询,可在配置文件hibernate.cfg.xml中配置属性show_sql,值为true。后续应该考虑批处理查询、同时进行增删改查等问题。那么基本的增删改查就算完美了。在更新方法中有用到查询。可参考。之前就知道纠结于servlet实现各种功能,发现臃肿而且还不好维护,现在才安心研究ssh框架,感觉之前的时间真是浪费了一部分,不过也没什么,至少自己理解现在的框架,更加能够清晰的认识深层次的东西。

true

加了这句之后,保存数据时,控制台:

 

转载于:https://www.cnblogs.com/ciscolee/p/10945464.html

你可能感兴趣的文章
第一次使用cnblogs
查看>>
C#语法糖之 session操作类 asp.net
查看>>
2015 Multi-University Training Contest 3
查看>>
使用Gitblit 在windows 上部署你的Git Server
查看>>
217. Contains Duplicate
查看>>
vue2.0 关于Vue实例的生命周期
查看>>
jenkins 更换主数据目录
查看>>
Silverlight中恼人的g.i.cs错误
查看>>
SQLite 数据库增删改查
查看>>
<s:iterator>的status
查看>>
C++入门--1.0输入输出
查看>>
让搭建在Github Pages上的Hexo博客可以被Google搜索到
查看>>
Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十四章:曲面细分阶段...
查看>>
在WPF控件上添加Windows窗口式调整大小行为
查看>>
背水一战 Windows 10 (36) - 控件(弹出类): ToolTip, Popup, PopupMenu
查看>>
教育类APP开发现新增长,多款APP该如何突围?
查看>>
打开3389
查看>>
React学习记录
查看>>
nginx常见内部参数,错误总结
查看>>
对象与类
查看>>