博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
maven hibernate 实现对mysql简单的CRUD操作
阅读量:4078 次
发布时间:2019-05-25

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

目录结构如下图所示:

1.hibernate.cfg.xml

org.hibernate.dialect.MySQLDialect
com.mysql.jdbc.Driver
jdbc:mysql://localhost:3306/01hibernate
root
root
true
update

2.User.java

package cn.sigangjun.hibernate.model;import java.util.Date;/** * @author sigangjun * */public class User {	private int id;	private String username;	private String password;	private String nickname;	private Date born;	public int getId() {		return id;	}	public void setId(int id) {		this.id = id;	}	public String getUsername() {		return username;	}	public void setUsername(String username) {		this.username = username;	}	public String getPassword() {		return password;	}	public void setPassword(String password) {		this.password = password;	}	public String getNickname() {		return nickname;	}	public void setNickname(String nickname) {		this.nickname = nickname;	}	public Date getBorn() {		return born;	}	public void setBorn(Date born) {		this.born = born;	}	@Override	public String toString() {		return "User [id=" + id + ", username=" + username + ", password=" + password + ", nickname=" + nickname + ", born=" + born + "]";	}}

3.User.hbm.xml

4.HibernateUtil.java

package cn.sigangjun.hibernate.util;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.cfg.Configuration;import org.hibernate.service.ServiceRegistry;import org.hibernate.service.ServiceRegistryBuilder;public class HibernateUtil {	private final static SessionFactory FACTORY = buildSessionFactory();	private static SessionFactory buildSessionFactory() {		Configuration cfg = new Configuration().configure();		ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(cfg.getProperties()).buildServiceRegistry();		SessionFactory factory = cfg.buildSessionFactory(serviceRegistry);		return factory;	}		public static SessionFactory getSessionFactory() {		return FACTORY;	}		public static Session openSession() {		return FACTORY.openSession();	}		public static void close(Session session) {		if(session!=null) session.close();	}}

5.pom.xml

4.0.0
cn.sigangjun
02hibernate
war
0.0.1-SNAPSHOT
02hibernate Maven Webapp
http://maven.apache.org
mysql
mysql-connector-java
5.1.25
org.hibernate
hibernate-core
4.2.6.Final
junit
junit
4.10
test
02hibernate

6.测试代码:TestCRUD.java

package cn.sigangjun.hibernate.test;import java.text.SimpleDateFormat;import java.util.List;import org.hibernate.Session;import org.junit.Test;import cn.sigangjun.hibernate.model.User;import cn.sigangjun.hibernate.util.HibernateUtil;@SuppressWarnings("unchecked")public class TestCRUD {	private static final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");	@Test	public void testAdd() {		Session session = null;		try {			session = HibernateUtil.openSession();			session.beginTransaction();			User u = new User();			u.setBorn(sdf.parse("1977-11-22"));			u.setNickname("司刚军");			u.setPassword("123");			u.setUsername("sigangjun");			session.save(u);			session.getTransaction().commit();		} catch (Exception e) {			e.printStackTrace();			if (session != null)				session.getTransaction().rollback();		} finally {			HibernateUtil.close(session);		}	}	@Test	public void testLoad() {		Session session = null;		try {			session = HibernateUtil.openSession();			User u = (User) session.load(User.class, 2);			System.out.println(u);		} catch (Exception e) {			e.printStackTrace();		} finally {			HibernateUtil.close(session);		}	}	@Test	public void testUpdate() {		Session session = null;		try {			session = HibernateUtil.openSession();			session.beginTransaction();			User u = (User) session.load(User.class, 2);			u.setNickname("张小四");			session.update(u);			session.getTransaction().commit();		} catch (Exception e) {			e.printStackTrace();			if (session != null)				session.getTransaction().rollback();		} finally {			HibernateUtil.close(session);		}	}	@Test	public void testDelete() {		Session session = null;		try {			session = HibernateUtil.openSession();			session.beginTransaction();			User u = new User();			u.setId(2);			session.delete(u);			session.getTransaction().commit();		} catch (Exception e) {			e.printStackTrace();			if (session != null)				session.getTransaction().rollback();		} finally {			HibernateUtil.close(session);		}	}	@Test	public void testList() {		Session session = null;		try {			session = HibernateUtil.openSession();			List
users = session.createQuery("from User").list(); for (User u : users) { System.out.println(u); } } catch (Exception e) { e.printStackTrace(); } finally { HibernateUtil.close(session); } } @Test public void testPager() { Session session = null; try { session = HibernateUtil.openSession(); List
users = session.createQuery("from User").setFirstResult(0).setMaxResults(2).list(); for (User u : users) { System.out.println(u); } } catch (Exception e) { e.printStackTrace(); } finally { HibernateUtil.close(session); } }}

你可能感兴趣的文章
二叉树的非递归遍历
查看>>
【leetcode】Reorder List (python)
查看>>
【leetcode】Linked List Cycle (python)
查看>>
【leetcode】Candy(python)
查看>>
【leetcode】Sum Root to leaf Numbers
查看>>
如何成为编程高手
查看>>
本科生的编程水平到底有多高
查看>>
selenium学习资料
查看>>
从mysql中 导出/导入表及数据
查看>>
HQL语句大全(转)
查看>>
几个常用的Javascript字符串处理函数 spilt(),join(),substring()和indexof()
查看>>
javascript传参字符串 与引号的嵌套调用
查看>>
swiper插件的的使用
查看>>
layui插件的使用
查看>>
JS牛客网编译环境的使用
查看>>
9、VUE面经
查看>>
Golang 数据可视化利器 go-echarts ,实际使用
查看>>
mysql 跨机器查询,使用dblink
查看>>
mysql5.6.34 升级到mysql5.7.32
查看>>
dba 常用查询
查看>>