本文共 5592 字,大约阅读时间需要 18 分钟。
org.hibernate.dialect.MySQLDialect com.mysql.jdbc.Driver jdbc:mysql://localhost:3306/01hibernate root root true update
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 + "]"; }}
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(); }}
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
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(); Listusers = 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); } }}