博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
菜鸟学习Hibernate——简单的增、删、改、查操作
阅读量:7207 次
发布时间:2019-06-29

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

hot3.png

上篇博客利用搭建起一个简单的例子,把的映射显示了出来在上一篇的博客基础上这篇博客讲述如何利用Hinbernate框架实现简单的数据库操作。

1、加入junit.jar

2、新建一个工具类HibernateUtils.把一些对session的公共操作封装起来

import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.cfg.Configuration;public class HibernateUtils {/*  *读取Hibernate.cfg.xml文件*/	private static SessionFactory factory;		static {		try {			//读取hibernate.cfg.xml文件			Configuration cfg = new Configuration().configure();						//建立SessionFactory			factory = cfg.buildSessionFactory();		}catch(Exception e) {			e.printStackTrace();		}	}	/*	  *打开Session	*/		public static Session getSession() {		return factory.openSession();	} 	/*	  *关闭Session	*/		public static void closeSession(Session session) {		if (session != null) {			if (session.isOpen()) {				session.close();			}		}	}		public static SessionFactory getSessionFactory() {		return factory;	}}

3、新建一个test类继承TestCase(Junit包里面的)然后下面就利用test类对User对象的增、删、改、查。

import java.util.Date;import org.hibernate.Session;import com.bjpowernode.hibernate.HibernateUtils;import com.bjpowernode.hibernate.User;import junit.framework.TestCase;public class test extends TestCase {/* * 增加User */	public void testSave() {				Session session = null;		try {			session = HibernateUtils.getSession();			session.beginTransaction();						User user = new User();			user.setName("李四");			user.setPassword("123");			user.setCreateTime(new Date());			user.setExpireTime(new Date());			session.save(user);			session.getTransaction().commit();		}catch(Exception e) {			e.printStackTrace();			session.getTransaction().rollback();		}finally {			HibernateUtils.closeSession(session);		}	}	/**	 * 删除	 */	public void testDel(){		Session session = null;		try {			session = HibernateUtils.getSession();			session.beginTransaction();						User user=(User)session.load(User.class, "4028989545a244640145a24466300001");						session.delete(user);			session.getTransaction().commit();		}catch(Exception e) {			e.printStackTrace();			session.getTransaction().rollback();		}finally {			HibernateUtils.closeSession(session);		}	}		/**	 * 修改	 */	public void testUpdate(){		Session session = null;		try {			session = HibernateUtils.getSession();			session.beginTransaction();						User user=(User)session.load(User.class, "4028989545a243ca0145a243cbf80001");			user.setName("王五");			session.update(user);			session.getTransaction().commit();		}catch(Exception e) {			e.printStackTrace();			session.getTransaction().rollback();		}finally {			HibernateUtils.closeSession(session);		}	}		/**	 * 查询	 */	public void testLoad(){		Session session = null;		try {			session = HibernateUtils.getSession();			session.beginTransaction();						User user=(User)session.load(User.class, "4028989545a243ca0145a243cbf80001");			System.out.println(user.getName());			System.out.println(user.getId());			System.out.println(user.getPassword());			System.out.println(user.getClass());			System.out.println(user.getCreateTime());			System.out.println(user.getExpireTime());			session.getTransaction().commit();		}catch(Exception e) {			e.printStackTrace();			session.getTransaction().rollback();		}finally {			HibernateUtils.closeSession(session);		}	}}

4、效果图

 

总结:

      利用Hibernate简单的增、删、改、查操作的应用是一个很基础的应用刚学Hibernate就应该先从简单的学起。

转载于:https://my.oschina.net/airship/blog/822892

你可能感兴趣的文章
转:numpy数据集练习——鸢尾花数据集
查看>>
把wcf服务,改成restful方式,以及吐槽
查看>>
SpatiaLite 各版本数据库差异
查看>>
Python变量和数据类型
查看>>
HTML(二)选择器
查看>>
C++ 类模板的使用
查看>>
AJAX编程-封装ajax工具函数
查看>>
Common Lisp学习笔记(九)
查看>>
一只菜鸡的话
查看>>
变量声明和定义的区别
查看>>
python之路之课后作业
查看>>
p4475 巧克力王国
查看>>
js中的Attribute
查看>>
Mysql的一些常用命令
查看>>
蓝桥杯:基础练习 闰年判断
查看>>
LeetCode-82-Remove Duplicates from Sorted List II
查看>>
ASP.NET XML读取、增加、修改和删除操作
查看>>
struts2将servlet对象注入到Action中
查看>>
快速排序
查看>>
const变量存储位置及const指针
查看>>