hibernate学习之在intellij idea下使用maven创建hibernate项目(详细图文教程)

版权声明:本文为徐代龙原创文章,未经徐代龙允许不得转载。网络资源网站:xudailong.cc 福利网站:www.00reso.com 公众号:蛇崽网盘教程资源 https://blog.csdn.net/xudailong_blog/article/details/84395375

在上次学习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&amp;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&amp;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个小程序」,即可免费领取享有导入就能跑的微信小程序

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/xudailong_blog/article/details/84395375
今日推荐