主要内容:
1.hibernate环境的搭建
2.hibernate开发的流程
一、在eclipse里插入hibernate插件。方便以后生产配置文件。
https://tools.jboss.org/downloads/jbosstools/oxygen/4.5.0.Final.html
1.找到对应eclipse版本的插件
点击上面的网址Artifact下载“Sources zip of all JBoss Core Tools”
2.
eclipsehelpinstall new softwareAddArchive选择刚才下载的安装包按提示进行安装
二、配置数据库。我用的是MySql
管理工具是 Navicat
三、安装hibernate的jar包
1.在官网上下载下面的包
hibernate-release-5.0.12.Final
2.在lib/required文件夹里把以下8个核心jar包安装
antlr-2.7.7.jar
dom4j-1.6.1.jar
hibernate-commons-annotations-4.0.2.Final.jar
hibernate-core-4.2.4.Final.jar
hibernate-jpa-2.0-api-1.0.1.Final.jar
javassist-3.15.0-GA.jar
jboss-logging-3.1.0.GA.jar
jboss-transaction-api_1.1_spec-1.0.1.Final.jar
注意:记得把masql数据库的驱动jar包也放进去
四、在src文件夹创建hibernate.cfg.xml配置文件
1.因为之前安装了hibernate插件。所以生成文件的时候在hibernate文件夹里可以找到模板
2.配置
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!-- 数据库用户名-->
<property name="connection.username">root</property>
<!-- 数据库密码-->
<property name="connection.password">1234</property>
<!--mysql的驱动下载 -->
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<!--指定数据库名。我创建的是testmysql。后面指定了字符编码,防止数据出现乱码 -->
<property name="connection.url">jdbc:mysql:///testmysql?userUnicode=true&characterEncoding=UTF-8</property>
<!-- 数据库方言-->
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<!-- 在控制台显示sql语句-->
<property name="show_sql">true</property>
<!-- 指定自动更新数据表。也可以配置create:这是自动生成,会覆盖原来数据-->
<property name="hbm.2ddl.auto">update</property>
<property name="format_sql">true</property>
<!-- 注册映射文件 -->
<mapping resource="com/yang/Students.hbm.xml"/>
</session-factory>
</hibernate-configuration>
五、创建持久化类
规则
1.变量要私有化,生成set/get方法
2.写一个无参的构造函数
3.写一个带参的构造函数
六、创建对象关系映射文件
**.hbm.xml
右键New选择持久化类,用hibernate插件自动生成
七、创建session对象
要想数据插入数据库,这一步是必须的。
// 创建配置对象
Configuration configure = new Configuration().configure();
// 创建服务注册对象
ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(configure.getProperties())
.buildServiceRegistry();
// 创建会话工厂
sessionFactory = configure.buildSessionFactory(serviceRegistry);
// 会话对象
session = sessionFactory.openSession();
// 开启事务
transaction = session.beginTransaction();
//插入一条数据,并保存到session里
Students s=new Students(2,"小川","男");
session.save(s);
!!!一定不要忘记提交事务,并关闭会话和工厂!!!
//提交事务
transaction.commit();
//关闭会话
session.close();
//关闭会话工厂
sessionFactory.close();