Hibernate 在 Intelij中的使用

什么是hibernate

首先看一下百度百科对hibernate的描述:

Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。

这个项目使用hibernate也是用来为安卓端和web端提供数据库访问的,所以一步一步来上手,先从第一个例子开始。


hibernate例子

在第一个例子之前先介绍一下我使用的编译器,为Intellij IDEA,其中自动集成了hibernate和junit的jar包,使用eclipse的小伙伴们要自行装tools了。

第一步:先创建一个新项目

这时要选中web application、Hibernage和自动创建配置文件这三个选项,下一步、下一步……连接数据库的jar包请自行导入。。

这里写图片描述


第二步:修改hibernate的配置文件

项目创建完成后会自动创建这个配置文件,下面我们要修改配置文件了。

这里写图片描述

不同的数据库配置信息会略有差别,这里我用的mysql

<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD//EN"
        "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
        <property name="connection.url">jdbc:mysql://localhost:3306/sh_books</property>
        <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="connection.username">root</property>
        <property name="connection.password">root</property>

        <!-- 配置hibernate的基本信息 -->

        <!-- 配置数据库方言dialect -->
        <property name="dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
        <property name="show_sql">true</property>
        <property name="format_sql">true</property>
        <!-- 指定自动生成数据表的策略 -->
        <property name="hbm2ddl.auto">update</property>


        <!-- DB schema will be updated if needed -->
        <!-- <property name="hbm2ddl.auto">update</property> -->
    </session-factory>
</hibernate-configuration>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25



第三步:创建对象-关系映射文件

这个嘛,来咱们先连接一下数据库

先点击IDEA左下角的小家伙,这时IDEA最右边就会出现一列工具栏,点击database,来连接我们的数据库。

这里写图片描述

这里写图片描述

这里写图片描述

这时候数据库已经成功连接上了,能看到数据库的信息。

这里写图片描述

接下来通过persistence创建映射文件。

点击IDEA最左边一栏的persistence,右键点击demo

这里写图片描述

这里写图片描述

这时IDEA就非常智能的帮我们创建了java文件和xml文件

这里写图片描述



第四步:编写相应测试类

import com.hibernate.demo.MajorEntity;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import org.hibernate.service.ServiceRegistryBuilder;
import org.junit.Test;

/**
 * Created by violet on 2016/3/10.
 */
public class majorTest {

    private SessionFactory sessionFactory;
    private Session session;
    private Transaction transaction;

    @Test
    public void test(){
        System.out.println("test....");

        //1. 创建配置对象
        Configuration config = new Configuration().configure();
        //2. 创建服务注册对象
        ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(config.getProperties()).buildServiceRegistry();
        //3. 创建会话工厂对象
        sessionFactory = config.buildSessionFactory(serviceRegistry);
        //4. 会话对象
        session = sessionFactory.openSession();
        //5. 开启事务
        transaction = session.beginTransaction();

        //6. 生成专业对象
        MajorEntity majorEntity = new MajorEntity("XXXX", "XXXX", 3);
        //7. 保存对象进入数据库
        session.save(majorEntity);

        //8. 提交事务
        transaction.commit();
        //9. 关闭会话
        session.close();
        //10. 关闭会话工厂
        sessionFactory.close();
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47

这时候别忘记hibernate的配置文件要更新,其实刚才产生关系映射文件的时候可以选择更新xml文件来着,给忘了。

这里写图片描述

好,这时候我们跑一下,发现运行成功,这时候log文件显示是这样的

这里写图片描述

再看一下数据库,完美的插入了一条新的数据,这就是用intellij创建第一个hibernate例子的过程,要继续学习啦!


猜你喜欢

转载自blog.csdn.net/Charles_dai001/article/details/78812815