Hibernate5教程之一基本使用详解

Hello,大家好,本篇文章描述Hibernate5的基本使用。
使用环境:
1、Hibernate5.2.10
2、Eclipse neon3
3、jdk1.8
4、MySQL5.7
总所周知,在开发中我们会使用一些持久层框架,而Hibernate则是相当不错一个。在使用Hibernate之前,我们应该知道ORM框架,那么什么是ORM呢?
ORM:对象关系映射(Object Relational Mapping,简称ORM,或O/RM,或O/R mapping)是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换。其实就是将关系和对象通过映射文件进行联系。我们在程序中只需要操作对象即可操作对应的数据库表的数据。
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用。是ORM的一种实现。
注意:POJO(Plain Ordinary Java Object)简单的Java对象,实际就是普通JavaBeans
我们在使用之前应该先去下载Hibernate的jar包
官方下载地址
CSDN下载地址
首先我们来介绍下基本的使用步骤:
1、导入jar包
将XXX\Hibernate\hibernate-release-5.2.10.Final\hibernate-release-5.2.10.Final\lib\required中的jar包和对应数据库的驱动jar包加载导向项目中
2、写全局配置
创建hibernate.cfg.xml,写出全局配置





<hibernate-configuration>
    
    <session-factory>
        
        
        
        <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driverproperty>
        
        <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/hibernate_db?characterEncoding=UTF-8property>
        
        <property name="hibernate.connection.username">lxproperty>
        
        <property name="hibernate.connection.password">lxproperty>
        
        <property name="hibernate.dialect">org.hibernate.dialect.MySQL5Dialectproperty>
        
        
        <property name="hibernate.hbm2ddl.auto">updateproperty>
        
        <property name="hibernate.show_sql">trueproperty>
        
        <property name="hibernate.format_sql">trueproperty>
        
        <property name="hibernate.current_session_context_class">threadproperty>
        
        
        <mapping resource="cn/code404/domain/User.hbm.xml">mapping>
    session-factory>
hibernate-configuration>

3、创建类–也就是表

public class User {
    private int id;
    private String name;
    private String pass;
    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 getPass() {
        return pass;
    }
    public void setPass(String pass) {
        this.pass = pass;
    }
    public User(String name, String pass) {
        super();
        this.name = name;
        this.pass = pass;
    }
    public User() {
        super();
    }   
}

4、类-表的映射文件





<hibernate-mapping package="cn.code404.domain">
    
    
    <class name="User" table="tb_user">
    
        <id name="id" column="id">
            
            <generator class="native"/>
        id>
        
        <property name="name" length="16" column="username"/>
        <property name="pass" length="32"/>  
    class>
hibernate-mapping>

5、将映射文件配置到全局配置中

<mapping resource="cn/code404/domain/User.hbm.xml">mapping>

6、使用Hibernate

1.加载配置文件

Configuration configuration = new Configuration().configure();

2.创建Session工厂

SessionFactory factory = configuration.buildSessionFactory();

3.创建Session对象

Session session = factory.openSession();

4.操作数据

System.out.println(session.save(new User("测试", "666666")));

5.关闭,释放资源

session.close();

以下是完整的单元测试代码:

// 基本使用
    @Test
    public void test1() {
        // 1、加载配置文件
        Configuration configuration = new Configuration().configure();
        // 2、创建Session工厂
        SessionFactory factory = configuration.buildSessionFactory();
        // 3、创建Session对象
        Session session = factory.openSession();
        // 4、操作数据
        System.out.println(session.save(new User("测试", "666666")));
        // 5、关闭
        session.close();
    }

好了,以上就是我们使用Hibernate5.2.10完成的基本用法。
有什么问题,欢迎评论留言!

你可能感兴趣的:(Hibernate)