您的位置:首页 > 其它

使用Intellij IEDA创建第一个hibernate例子

2016-03-09 22:17 627 查看
新项目开始了,意味着要开始学习新知识,想想这样也是蛮好的,先从hibernate开始。

什么是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>


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

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

先点击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();
}
}


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



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



再看一下数据库,完美的插入了一条新的数据,这就是用intellij创建第一个hibernate例子的过程,要继续学习啦!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: