在上次学习hibernate基础了解之后,这里再次进行intellij idea IDE
使用maven进行hibernate的安装,并跑通一个HelloWord
。
环境
- windows 7 64位
- intellij idea
- maven
- hibernate
本次教程针对毫无经验的小白,比如我,然后教你如何一步步的成功运行起hibernate的helloword
建议先稍微看下之前的这两篇文章:
使用IntelliJ IDEA通过Maven创建Spring的HelloWord(超详细图文教程)
使用Intellij IDEA通过Maven搭建struts2的HelloWord(超详细图文教程)
步骤:
(一)创建Maven项目,选择quickstart项目,点击next
(二)根据自己随意命名项目名称:一般是公司名+项目名
(三)设置Maven仓库地址及路径,点击+号,填写信息,选择ok,并点击下一步
(四)填写项目名,项目存放路径
(五)新窗口打开
(六) 创建成功后的整个架构
点击Auto 后
(七)导入hibernate需要依赖的Jar包
<!--引入hibernate包-->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>5.2.9.Final</version>
</dependency>
<!--引入mysql包-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.39</version>
</dependency>
都知道hibernate是一种ORM的框架,是基于面向对象对数据库进行增删改查,所以这里有需要用到mysql包
(八)对项目进行Sources Root 与Resources Root的配置,好引入hibernate所需要的xml文件
(九)添加hibernate的文件
选择Facets,后选择+号,再选择hibernate
选中后,选中当前项目,点击OK
ok后再选择+号,进行添加
选择版本号,这里建议使用推荐的5.2.x版本的就行
点击ok后,这时候项目下的resouces下会多出来一个hibernate.cfg.xml的文件。
(十)对hibernate的文件进行设置,主要是数据库的关联,以及与bean的关联操作
将修改为:
<?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"/>-->
<!--<property name="connection.driver_class"/>-->
<!-- <property name="connection.username"/> -->
<!-- <property name="connection.password"/> -->
<!-- DB schema will be updated if needed -->
<!-- <property name="hbm2ddl.auto">update</property> -->
<property name="hibernate.connection.username">root</property>
<!-- mysql密码 -->
<property name="hibernate.connection.password">h5$CYMdjWZp</property>
<!-- mysql驱动 -->
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<!-- mysql连接URL -->
<!--建议:mysql的url最好是这样写上,如果要连接远程mysql,只需要把127.0.0.0.1的改为远程mysql地址即可,这里的zhibo 为数据库名,后面跟上的一串为字符串的编码,建议都写上-->
<property name="hibernate.connection.url">jdbc:mysql://127.0.0.0.1:3306/zhibo?useUnicode=true&characterEncoding=UTF-8</property>
<!-- 数据库方言 -->
<!--<property name="dialect">org.hibernate.dialect.MySQLDialect</property>-->
<!--// 5.0之后使用的数据库方言-->
<property name="dialect">org.hibernate.dialect.MySQL5Dialect</property>
<!-- 显示sql语句 -->
<property name="show_sql">true</property>
<!-- 格式化sql语句 -->
<property name="format_sql">true</property>
<!-- 根据需要创建数据库 (这里的操作是,如果数据库中已经有这个表,就将这个表删除掉,重新创建表格)-->
<!--<property name="hbm2ddl.auto">create</property>-->
<!--添加刚刚生成的映射类-->
<mapping class="com.hibernatedemo.dao.TbAreaEntity"></mapping>
</session-factory>
</hibernate-configuration>
修改设置后的图片
(十一)使用intellij idea的database数据库进行连接数据库。
填写账号,密码,ip地址,数据库名等
(十二)在intellij idea 中进行数据库的查询,有没有被惊讶到?
(十三)使用idea来创建一个student表
创建好后,点击ok
多出一张student表
(十四)将刚创建好的表与类完成数据映射的关系
这时候我们会发现出现Persistence,然后选中右键进行关联
选中数据源及所对应的表
yes
ok
生成StudentEntity
增加两个构造方法
(十五)在hibernate.cfg.xml中进行类配置,
<?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"/>-->
<!--<property name="connection.driver_class"/>-->
<!-- <property name="connection.username"/> -->
<!-- <property name="connection.password"/> -->
<!-- DB schema will be updated if needed -->
<!-- <property name="hbm2ddl.auto">update</property> -->
<property name="hibernate.connection.username">root</property>
<!-- mysql密码 -->
<property name="hibernate.connection.password">h5$CYMZdjWZp</property>
<!-- mysql驱动 -->
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<!-- mysql连接URL -->
<!--建议:mysql的url最好是这样写上,如果要连接远程mysql,只需要把127.0.0.0.1的改为远程mysql地址即可,这里的zhibo 为数据库名,后面跟上的一串为字符串的编码,建议都写上-->
<property name="hibernate.connection.url">jdbc:mysql://127.0.0.0.1:3306/zhibo?useUnicode=true&characterEncoding=UTF-8</property>
<!-- 数据库方言 -->
<!--<property name="dialect">org.hibernate.dialect.MySQLDialect</property>-->
<!--// 5.0之后使用的数据库方言-->
<property name="dialect">org.hibernate.dialect.MySQL5Dialect</property>
<!-- 显示sql语句 -->
<property name="show_sql">true</property>
<!-- 格式化sql语句 -->
<property name="format_sql">true</property>
<!-- 根据需要创建数据库 (这里的操作是,如果数据库中已经有这个表,就将这个表删除掉,重新创建表格)-->
<!--<property name="hbm2ddl.auto">create</property>-->
<!--添加刚刚生成的映射类-->
<mapping class="com.mhibernate.hibernatedemo.StudentEntity"></mapping>
</session-factory>
</hibernate-configuration>
(十六)创建TestStudent测试类,并进行测试。
package com.mhibernate.hibernatedemo;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
public class TestStudent {
private SessionFactory sessionFactory;
private Session session;
private Transaction transaction;
// 测试开始
@Before
public void init(){
//创建会话工厂
sessionFactory = new Configuration().configure().buildSessionFactory();
// 开启会话
session =sessionFactory.openSession();
//开启事物
transaction = session.beginTransaction();
}
// 测试结束
@After
public void destory(){
//关闭事物
transaction.commit();
//关闭对话
session.close();
// 关闭会话工厂
sessionFactory.close();
}
// 下面是测试用例
@Test
public void testStudent(){
StudentEntity student = new StudentEntity();
student.setAge(233);
student.setName("周杰伦");
session.save(student);
}
}
运行成功后的截图:
因为之前有插入过数据,所以这里显示了三条了数据。
以上就是在intellij idea下使用Maven创建hibernate项目的HelloWord,如果有不懂的地方,欢迎在评论区留言。
个人网站:http://xudailong.cc
关注「蛇崽网盘教程资源」公众号 ,在微信后台回复「领取资源」,获取IT资源200G干货大全。
更多资源请访问:
关注「蛇崽网盘教程资源」公众号 ,在微信后台回复「领取资源」,获取IT资源200G干货大全。
在微信后台回复「130个小程序」,即可免费领取享有导入就能跑的微信小程序