Intellij Idea 15 下新建 Hibernate 项目以及如何添加配置

    xiaoxiao2021-03-26  23

    Intellij Idea 15 下新建 Hibernate 项目以及如何添加配置

    本篇文章介绍内容:

    (1)如何在 Project 新建 Hibernate Module。

    (2)如何添加 jar 包到 Module 下。

    (3)如何添加 hibernate.cfg.xml,以及如何自定义模板。

    (4)如何添加 Entity.hbm.xml 文件,以及自动生成实体。

    3.在最开始前,添加 Hibernate 的插件。

    文章链接(一篇非常详细的建立hibernate项目的介绍) http://www.mobile-open.com/2016/977339.html 以及这篇文章 http://blog.csdn.net/qq_15096707/article/details/51419304

    Hibernate学习:Intellij IDEA下新建Hibernate HelloWorld:Hibernate是java领域的一款轻量级ORM(对象关系模型)框架,它对JDBC进行了封装,实现了从关系型数据库到面向对象的领域模型的映射,可以将对象自动映射成数据库中的信息。它还提供了面向对象的数据查询检索机制,这样我们就不用关心繁琐的JDBC,从而极大缩短了手动处理SQL和JDBC上的开发时间。

    Hibernate开发环境搭建

    mysql数据库

    既然Hibernate是一款ORM框架,那就涉及到数据库操作。这里我们用最常见的开源关系型数据库mysql,具体安装办法我这里不细说,不懂的可以百度谷歌。这里我主要说说在Intellij IDEA下搭建Hibernate开发环境。

    Intellij IDEA

    相比于eclipse,JetBrains公司的Intellij IDEA更智能,操作方便,还可以兼容eclipse的项目。Google的Android Studio也是在Intellij IDEA的基础上开发的。

    (一)新建maven项目,通过maven管理依赖

    (二)填写项目GroupId和ArtifactId,点击next

    (三)填写项目名称,选择项目存放位置,点击finish

    项目目录结构如图所示:

    这里我说一下文件夹的主要功能:

    java:存放代码 resources:存放配置文件 test:存放测试代码 pom.xml:maven的依赖文件,以来都在这里添加

    (四)添加依赖

    建好项目以后,接下来就是要添加hibernate依赖了。由于Hibernate要连接mysql,所以还要添加mysql驱动。这样maven会自动下载jar包到本地仓库。

    pom.xml

    ? 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 <!--?xml version= "1.0" encoding= "UTF-8" ?--> <project xmlns= "http://maven.apache.org/POM/4.0.0" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:schemalocation= "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" >      <modelversion> 4.0 . 0 </modelversion>        <groupid>com.doubecharli</groupid>      hibernate</artifactid>      <version> 1.0 -SNAPSHOT</version>        <dependencies>          <!--junit-->          <dependency>              <groupid>junit</groupid>              junit</artifactid>              <version> 4.12 </version>          </dependency>            <!--hibernate-->          <dependency>              <groupid>org.hibernate</groupid>              hibernate-core</artifactid>              <version> 5.1 . 0 .Final</version>          </dependency>            <!--mysql driver-->          <dependency>              <groupid>mysql</groupid>              mysql-connector-java</artifactid>              <version> 5.1 . 40 </version>          </dependency>        </dependencies>   </project>

    Hibernate第一个实例

    上面我们把开发环境搭好了,到这里我们就可以开撸了。使用Hibernate一共有四步,分别是:

    创建Hibernate配置文件 创建持久化类 创建映射文件 通过Hibernate API访问数据库

    创建Hibernate配置文件

    配置文件主要是配置数据库的一些信息,包括用户名和密码等。它可以是properties文件,也可以是xml文件,比较常用的是xml文件。这里我用的是xml文件,默认名为hibernate.cfg.xml,放在resources文件夹下。当然你也可以另起名字,不过要在代码中显式声明,后面我会说到。

    hibernate.cfg.xml

    ? 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 <!--?xml version= '1.0' encoding= 'utf-8' ?-->   <hibernate-configuration>      <session-factory>            <!-- 指定连接数据库所用的驱动 -->          <property name= "connection.driver_class" >com.mysql.jdbc.Driver</property>          <!-- 指定连接数据库的url,hibernate连接的数据库名 -->          <property name= "connection.url" >jdbc:mysql: //localhost:3306/hibernate</property>          <!-- 指定连接数据库的用户名 -->          <property name= "hibernate.connection.username" >root</property>          <!-- 数据库的登陆密码 -->          <property name= "hibernate.connection.password" >199498xy</property>          <!-- 指定连接数据库的编码 -->          <property name= "connection.characterEncoding" >utf8</property>          <!-- 指定数据库方言 -->          <property name= "hibernate.dialect" >org.hibernate.dialect.MySQLDialect</property>          <!-- 显示Hibernate持久化操作所生成的SQL -->          <property name= "show_sql" > true </property>          <!-- 将SQL脚本进行格式化后再输出 -->          <property name= "format_sql" > true </property>          <!-- 指定自动生成数据表的策略 -->          <property name= "hbm2ddl.auto" >update</property>            <!-- 罗列所有的映射文件 -->          <mapping resource= "mapping/User.hbm.xml" >      </mapping></session-factory> </hibernate-configuration>

    代码我不多说,重要的都写了注释,相信都看得明白。这里要说的是mapping节点,它用来指明映射文件的位置,一个映射文件对应一张表,每个映射文件都要在这里列出来。映射文件的内容就是我们后面第三步要说的。

    创建持久化类

    持久化类就是一个简单的java bean,bean的属性对应表的字段,一个类对应一张表

    User.java

    ? 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 package com.doubecharli.bean;   /**   * Created by Administrator on 2016/12/15.   */ public class User {      private String id;      private String username;      private int password;        public String getId() {          return id;      }        public void setId(String id) {          this .id = id;      }        public String getUsername() {          return username;      }        public void setUsername(String username) {          this .username = username;      }        public int getPassword() {          return password;      }        public void setPassword( int password) {          this .password = password;      } }

    创建映射文件

    映射文件是根据持久化类来写的,还要在配置文件hibernate.cfg.xml中声明。它就相当于持久化类和数据库中表的一座桥梁,Hibernate就是通过它找到数据库的对应字段,从而进行增删查改操作的

    User.hbm.xml

    ? 1 2 3 4 5 6 7 8 9 10 <!--?xml version= '1.0' encoding= 'utf-8' ?-->   <hibernate-mapping>        < class name= "com.doubecharli.bean.User" schema= "hibernate" table= "user" >          <id column= "id" name= "id" >          <property column= "username" name= "username" >          <property column= "password" name= "password" >      </property></property></id></ class > </hibernate-mapping>

    class节点的name属性指明映射文件对应的类,tabel指明数据库中对应的表;id节点对应数据库的主键;property 节点的name属性指明持久化类的属性,column指明表的字段

    通过Hibernate API访问数据库

    到这里我们已经完成了Hibernate的基本搭建,最后一步就是要通过Hibernate的各种API来操作数据库,这也是我们要达到的目的。由于篇幅有限,我这里主要是向数据库中插入一条数据,其他的API我会在后面的文章讲。话不多少,上代码!

    ? 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 package com.doubecharli;   import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration;   /**   * Created by Administrator on 2016/12/15.   */ public class HibernateTest {        public static void main(String[] args) {          // 加载Hibernate默认配置文件          Configuration configuration = new Configuration().configure();          // 用Configuration创建SessionFactory          SessionFactory factory = configuration.buildSessionFactory();          // 创建Session          Session session = factory.openSession();          // 开启事务          Transaction transaction = session.beginTransaction();          // 实例化持久化类          User user = new User();          user.setId( "1" );          user.setUsername( "doubecharli" );          user.setPassword( 123456 );          // 保存          session.save(user);          // 提交事务          transaction.commit();          // 关闭Session,释放资源          session.close();          factory.close();      } }

    执行以后,我们可以到数据库中看看,已经插入了一条记录!说明我们已经通过Hibernate的API来操作数据库,是不是很方便?再也不用写去复杂繁琐的JDBC了

    注意:如果你的配置文件命名不是默认的hibernate.cfg.xml,你就要在代码中显式声明配置文件

    ? 1 Configuration configuration = new Configuration().configure( "hibernate.xml"
    转载请注明原文地址: https://ju.6miu.com/read-659546.html

    最新回复(0)