博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用Hibernate操作数据库
阅读量:5984 次
发布时间:2019-06-20

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

hot3.png

一、加载数据库。

1. 使用get()方法。

package com.hibernate.dao;import org.hibernate.Session;import com.hibernate.entity.BaseEntity;public class TestGet {	public static void main(String[] args){		new TestGet().getEntityById(1);	}		private void getEntityById(int i){		//获得Session实例		Session session = HibernateSessionFactory.getSession();		//从数据表中家在Id为i的对象		BaseEntity baseEntity = (BaseEntity)session.get(BaseEntity.class, i);		//在控制台数据该对象信息		System.out.println(baseEntity.getCreateTime());		HibernateSessionFactory.clossSession();	}}

    使用get方法时,如果制定的记录不存在,则返回null。

2. 使用load()方法。

...BaseEntity baseEntity = (BaseEntity)session.load(BaseEntity.class, i);...

    使用load方法如果加载数据不存在,则抛出ObjectNotFoundException异常,这一点与get方法时不同的。

二、删除数据

    使用delete方法。

package com.hibernate.dao;import org.hibernate.Session;import org.hibernate.Transaction;import com.hibernate.entity.BaseEntity;public class TestDelete {	public static void main(String[] args) {		new TestDelete().deleteEntityById(3);	}		private void deleteEntityById(int i){		//获得Session实例		Session session = HibernateSessionFactory.getSession();		//创建一个事务		Transaction tx =null;		//从数据表中家在Id为i的对象		BaseEntity baseEntity = (BaseEntity)session.get(BaseEntity.class, i);		try{			//开始一个事务			tx = session.beginTransaction();			//执行删除			session.delete(baseEntity);			//提交事务			tx.commit();		}catch(Exception e){			if(tx!=null){				//事务回滚				tx.rollback();			}			e.printStackTrace();		}finally {			//关闭Session			HibernateSessionFactory.clossSession();		}	}}

三、修改数据

...//从数据表中家在Id为i的对象BaseEntity baseEntity = (BaseEntity)session.get(BaseEntity.class, i);baseEntity.serCreateTime(new Date());try{	//开始一个事务	tx = session.beginTransaction();	//执行修改	session.update(baseEntity);	...

 

转载于:https://my.oschina.net/PresidentLi/blog/799846

你可能感兴趣的文章
通过IP判断登录地址
查看>>
深入浅出JavaScript (五) 详解Document.write()方法
查看>>
Beta冲刺——day6
查看>>
代码生成工具Database2Sharp中增加视图的代码生成以及主从表界面生成功能
查看>>
关于在VS2005中编写DLL遇到 C4251 警告的解决办法
查看>>
我的友情链接
查看>>
IDE---Python IDE之Eric5在window下的安装
查看>>
基本安装lnmp环境
查看>>
logstash消费阿里云kafka消息
查看>>
Oracle——条件控制语句
查看>>
day-6 and day-7:面向对象
查看>>
CSU Double Shortest Paths 湖南省第十届省赛
查看>>
webgl像机世界
查看>>
php正则怎么使用(最全最细致)
查看>>
javascript数学运算符
查看>>
LC.155. Min Stack(非优化,两个stack 同步 + -)
查看>>
交互设计[3]--点石成金
查看>>
SCCM TP4部署Office2013
查看>>
bootloader功能介绍/时钟初始化设置/串口工作原理/内存工作原理/NandFlash工作原理...
查看>>
利用console控制台调试php代码
查看>>