JavaEE Hibernate使用

  1. eclipse上安装插件Hibernate Tools, Help->Intall new Software->Add.
JavaEE Hibernate使用
图1.png

其中

Name: HibernateTools
Location: http://download.jboss.org/jbosstools/updates/stable/indigo/
JavaEE Hibernate使用
图2.png

选择JBoss Web and Java EE Development中的Hibernate Tools,点击Next,并安装。安装成功后,File->New->Other如下,会出现Hibernate文件夹。

JavaEE Hibernate使用
图3.png
  1. 下载Hibernate工具包并解压
JavaEE Hibernate使用
图4.png
  1. 新建java工程, 将路径hibernate-release-5.2.11.Final\lib\required\的jar拷贝到项目的libs文件夹下。
JavaEE Hibernate使用
图5.png
  1. 创建Hibernate的配置文件,在src上点击鼠标右键选择New》Other...输入Hibernate,弹出Hibernate Tools插件相关的内容,然后选中配置文件,点击Next,如图:
JavaEE Hibernate使用
图6.png
JavaEE Hibernate使用
图7.png
  1. 创建实体类
package com.mazaiting.entity;

public class Student {
    private int id;
    private String name;
    private String age;
    
    public Student() {
    }
    
    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }
    
    public void setName(String name) {
        this.name = name;
    }
    
    public String getAge() {
        return age;
    }
    
    public void setAge(String age) {
        this.age = age;
    }
}

  1. 创建实体类的映射文件(映射文件应与实体类在同一路径下),New》Other...输入Hibernate,弹出Hibernate Tools插件相关的内容,然后选中映射文件,点击Next,如图:
JavaEE Hibernate使用
图8.png
JavaEE Hibernate使用
图9.png
JavaEE Hibernate使用
图10.png
  1. 进行Hibernate配置文件的详细配置,包括连接数据库需要的配置,是否输出sql语句,导入映射文件等等
JavaEE Hibernate使用
图11.png
JavaEE Hibernate使用
Hibernate常用配置理解.png
  1. 测试代码
public class StudentTest {
    /**
     * 会话工厂
     */
    private SessionFactory sessionFactory;
    /**
     * 会话对象
     */
    private Session session;
    /**
     * 事务对象
     */
    private Transaction transaction;
    
    /**
     * 初始化
     */
    @Before
    public void setUp(){
        // 创建配置
        Configuration config = new Configuration().configure("hibernate.cfg.xml");
        // 创建会话工厂
        sessionFactory = config.buildSessionFactory();
        // 创建会话对象
        session = sessionFactory.openSession();
        // 开启事务
        transaction = session.beginTransaction();
    }
    
    /**
     * 释放资源
     */
    @After
    public void tearDown(){
        // 提交事务
        transaction.commit();
        // 关闭会话
        session.close();
        // 关闭会话工厂
        sessionFactory.close();
    }
    
    /**
     * 测试方法
     */
    @Test
    public void testSaveStudent(){
        // 生成学生对象
        Student student = new Student();
        student.setId(1);
        student.setName("mazaiting");
        student.setAge("23");
        session.save(student);
    }
    
}