博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
利用Hibernate 框架,实现对数据库的增删改查
阅读量:6494 次
发布时间:2019-06-24

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

增:

package com.maya.test;import org.hibernate.*;import org.hibernate.cfg.*;import com.maya.model.Family;    public class Test2 {    public static void main(String[] args) {                Configuration config=new Configuration().configure();        SessionFactory factory=config.buildSessionFactory();            Session session=factory.openSession();                                    //增加        Family family=new Family();        family.setInfoCode("p004");        family.setName("张三");        family.setTitle("T003");        family.setFirm("齐鲁石化济南分公司");        family.setOrders(4);                try{            session.beginTransaction();    //事务开始            session.save(family);            session.getTransaction().commit();        //事务提交        }        catch(Exception e){            session.getTransaction().rollback();//如果发生错误,事务回滚        }                session.close();//关闭session        }    }

 

Hibernate框架自动生成如下语句,将数据插入数据库中

 

查询

package com.maya.test;import java.util.List;import org.hibernate.*;import org.hibernate.cfg.*;import com.maya.model.Family;    public class Test2 {    public static void main(String[] args) {                Configuration config=new Configuration().configure();        SessionFactory factory=config.buildSessionFactory();            Session session=factory.openSession();                            //        //查询(根据主键来查)//        Family fa=session.load(Family.class, 11);//        if(fa!=null){//            System.out.println(fa.getName()+" "+fa.getInfoCode());//        }                List
list=session.createQuery("from Family").getResultList(); //这里的Family对应的是实体类,不是sql语句中的family for(Family fa:list){ System.out.println(fa.getName()+" "+fa.getInfoCode()); } session.close();//关闭session } }

 

查询结果如下:SQL语句自动生成

 

 

删除:

package com.maya.test;import java.util.List;import org.hibernate.*;import org.hibernate.cfg.*;import com.maya.model.Family;    public class Test2 {    public static void main(String[] args) {                Configuration config=new Configuration().configure();        SessionFactory factory=config.buildSessionFactory();            Session session=factory.openSession();                            Family fa=session.get(Family.class,13);    //先查询        if(fa!=null){            session.beginTransaction();            session.delete(fa);                        //后删除            session.getTransaction().commit();;        }                session.close();//关闭session        }    }

package com.maya.test;import java.util.List;import org.hibernate.*;import org.hibernate.cfg.*;import com.maya.model.Family;    public class Test2 {    public static void main(String[] args) {                Configuration config=new Configuration().configure();        SessionFactory factory=config.buildSessionFactory();            Session session=factory.openSession();                            Family fa=session.get(Family.class,10);    //先查询        if(fa!=null){            session.beginTransaction();            fa.setName("盲僧");            fa.setFirm("召唤师峡谷");            session.update(fa);            session.getTransaction().commit();        }        session.close();//关闭session        }    }

 

注意:但凡涉及到数据操作(增删改)都要加上事务,保证数据增删改的的一致性

转载于:https://www.cnblogs.com/zhaotiancheng/p/6512216.html

你可能感兴趣的文章
Hibernate获取数据java.lang.StackOverflowError
查看>>
(转)如何修改maven的默认jdk版本
查看>>
Django模板过滤器详解
查看>>
流感下的北京中年 引发的消费型保险相关干货资料收集整理
查看>>
SnackbarUtilDemo【Snackbar的封装类】
查看>>
IOS上传图片的方法
查看>>
InnoDB和MyISAM区别
查看>>
8个免费实用的C++GUI库
查看>>
wifidog接口文档(转)
查看>>
mapreduce作业reduce被大量kill掉
查看>>
让资源管理器不显示最近常用文件夹
查看>>
极速发展的饿了么订单系统架构演进
查看>>
修改Activity响应音量控制键修改的音频流
查看>>
Listview获取选中行的值
查看>>
gsoap 学习 1-由wsdl文件生成h头文件
查看>>
dm8127之核间通信syslink
查看>>
javascript中重要概念-闭包-深入理解
查看>>
String、StringBuffer与StringBuilder之间区别 (转载)
查看>>
『参考』.net CF组件编程(4)——为自定义组件添加工具箱图标!
查看>>
关于在phpStudy环境下,windows cmd中 php不是内部命令问题
查看>>