本实验使用工具:
IntelliJ IDEA 2020.3.2 winx64
Mysql5.7.33 winx64
Navicat Premium 15
步骤一 新建一个空project,然后点击next
步骤二 给新建project命名,工程路径自选
步骤三 接着右击项目,添加需要的框架支持
步骤四 添加Maven依赖
步骤五 接着再点击添加框架依赖(Add Frameworks Support),然后勾选hibernate,选择界面中的②和③,然后点击OK,进行下载
步骤六 完成上面步骤之后的界面,左侧会出现一些新的包,主类Main和hibernate配置文件会自动放入java包下,右侧会自动弹出maven依赖。
步骤七 修改pom.xml文件(后面有pom.xml代码可直接复制),dependency内的mysql-connector-java为链接Mysql所需的jar包,我用的是5.0.5版本,也可以选用其他版本,但要注意如果Mysql为8.0版本,则mysql-connector-java须为8.0版本以上;Mysql为8.0版本以下,一般情况mysql-connector-java用5.0版本即可。
pom.xml:
<?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>groupId</groupId>
<artifactId>hibernateTest4</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.0.5</version>
</dependency>
</dependencies>
<!-- 默认源代码和资源文件目录配置 -->
<build>
<finalName>hibernateTest</finalName>
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
<resource>
<directory>src/main/java</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</resource>
</resources>
</build>
</project>
build内设置的为默认源代码和资源文件目录配置,设置后可以看到java和resources两个包发生了变化
步骤八 创建一个名为student的数据库和一个名为所需要用到的表,参数如下,创建方法就不演示了
步骤九 进入hibernate.cfg.xml文件,创建为如下模样
步骤十 添加数据库的账号密码
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">jdbc:mysql://121.40.189.213:3306/hibernateTest</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.username">root</property>
<property name="connection.password">101010</property>
<!-- DB schema will be updated if needed -->
<!-- <property name="hibernate.hbm2ddl.auto">update</property> -->
</session-factory>
</hibernate-configuration>
步骤十一 使用IDEA连接数据库。①点击右侧栏中的Database ②或者点击View下的Tool Windows 里的Database,在右侧栏会弹出Database
或者
步骤十二 点击Database下的数据库管理图标
步骤十三 弹出许多数据库可以配置选择,我的因为之前的配置过MySQL for 5.0.5,MySQL for 5.1,MySQL for 5.1.47了,所以会看到这四个
IDEA默认给的MySQL是8.0的版本而且还未下载
为了便于以后的使用,我们创建一个MySQL for 5.0.5的配置。
点击MySQL,然后点击上方的复制图标
此时会出现一个新的配置
先将Name修改为MySQL for 5.0.5,然后选中默认的Driver files,点击减号进行删除
再点击加号,添加新的驱动包
驱动包在maven的依赖库里,我的maven依赖库在默认位置上:
C:\Users\烤橘.m2\repository\mysql\mysql-connector-java\5.0.5\mysql-connector-java-5.0.5.jar,(注意烤橘为我的电脑的用户名,不同电脑名称可能不一样)
点击OK添加成功后,Driver files里显示刚添加的驱动包,然后点击Class的下拉框,选择com.mysql.jdbc.Driver,点击OK,该数据库首选项配置完成。
回到刚才的界面,在MySQL和MySQL for 5.0.5两个选项各点击一下,再点击加号,通常会出现新创建的MySQL for 5.0.5
点击MySQL for 5.0.5,出现选项框
输入你的数据库选项,然后点击Test Connection(注意Test Connection之前必须打开本地的MySQL服务和测试连接的数据库(student)),如果连接成功,下方会出现对号提示,如果连接失败,则检查输入选项是否正确
点击OK出现如下界面
接着,开始使用IDEA自动配置Hibernate的功能,点击View下的Tool Windows 里的Persistence
在左下角会弹出Persistence
右键HbiernateTest,选择Generate Persistence Mapping里的By Database Schema
弹出Import Database Schema选项框
选择数据库
创建存储实体类的包
继续配置选项,勾选所要连接的数据的表,点击OK
下图中红色标记部分便是自动创建的配置文件和实体类
创建Util包,在Util包下创建HibernateUtil类,类里面写入
package Util;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
public class HibernateUtil {
private static SessionFactory sessionFactory;
static{
try {
sessionFactory = new Configuration().configure().buildSessionFactory();
} catch (Throwable e) {
throw new ExceptionInInitializerError(e);
}
}
public static SessionFactory getSessionFactory(){
return sessionFactory;
}
public static void shutdown(){
getSessionFactory().close();
}
}
到此,前提准备工作完成,接着便可以进行单表操作或者多表操作
单表操作见:IDEA使用hibernate框架的详细教程(2)——单表操作篇(附源码)
多表操作见:IDEA使用hibernate框架的详细教程(3)——多表操作篇(附源码)