一 Maven依赖
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>5.4.0.Final</version>
</dependency>
<!--数据库驱动依赖-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.42</version>
</dependency>
需要注意的是mysql驱动包版本如果过高的话驱动类是com.mysql.cj.jdbc.Driver
二 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>
<!-- Mysql账户名 -->
<property name="connection.username">root</property>
<!-- Mysql密码 -->
<property name="connection.password">root</property>
<!-- Mysql驱动
<property name="connection.driver_class">com.mysql.cj.jdbc.Driver</property>-->
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<!-- Mysql连接URL -->
<property name="connection.url">jdbc:mysql://localhost:3306/oa</property>
<!-- 数据库方言 -->
<property name="dialect">org.hibernate.dialect.MySQL5Dialect</property>
<!-- 显示sql语句 -->
<property name="show_sql">true</property>
<!-- 格式化sql语句 -->
<property name="format_sql">true</property>
<!--映射-->
<mapping resource="UserEntity.hbm.xml"/>
</session-factory>
</hibernate-configuration>
三 实体类和映射文件直接跳过,IDEA可以从数据库直接导出所以就不贴代码。需要注意 的是映射文件路径
四 测试代码(跟之前的代码稍微有点改变)
import com.huilong.entity.UserEntity;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.boot.MetadataSources;
import org.hibernate.boot.registry.StandardServiceRegistry;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
public class TestHibernate {
private final StandardServiceRegistry registry = new StandardServiceRegistryBuilder().configure().build();
private SessionFactory sessionFactory = new MetadataSources(registry).buildMetadata().buildSessionFactory();
public void test(){
Session session=sessionFactory.openSession();
Transaction transaction=session.beginTransaction();
UserEntity userEntity = new UserEntity();
userEntity.setId(14);
userEntity.setName("li7");
// 提交事务
session.save(userEntity);
transaction.commit();
// 关闭资源
session.close();
sessionFactory.close();
System.out.println( "测试成功!" );
}
}
总结:需要细心细心再细心!