使用hibernate基本步骤
1,导入jar包
Pom.xml 中导入需要使用的jar包(可以直接百度maven repository查找你需要的jar包)
<!--hibernate的核心jar包-->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>5.0.12.Final</version>
</dependency>
<!--mysql连接数据库的jar包-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.46</version>
</dependency>
2,添加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://localhost:3306/qingyun</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.username">root</property>
<property name="connection.password">123456</property>
<!--使用注解模式,引入类的位置-->
<mapping class="com.qy.domain.StuEntity"/>
<!--使用配置文件,引入配置文件位置-->
<mapping resource="com/qy/domain/Course.hbm.xml"/>
<mapping resource="com/qy/domain/Employee.hbm.xml"/>
<mapping resource="com/qy/domain/Grade.hbm.xml"/>
<mapping resource="com/qy/domain/Record.hbm.xml"/>
<!-- DB schema will be updated if needed -->
<!-- <property name="hbm2ddl.auto">update</property> -->
</session-factory>
</hibernate-configuration>
3,创建数据库表对应的实体类
public class Course {
private String cno;
private String cname;
}
4,创建类和表的映射 ***.hbm.xml
Course.hbm.xml
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<!--name:类的全限定名 table:当前类对应的表名 schema:当前表所在的数据库名 -->
<class name="com.qy.domain.Course" table="course" schema="qingyun">
<!--id:主键 name:实体类中属性名 column:表中列名 -->
<id name="cno" column="cno"/>
<!--property 普通属性和列的对应 -->
<property name="cname" column="cname"/>
</class>
</hibernate-mapping>
5,测试
创测试类
package com.qy;
import com.qy.domain.Course;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
import java.util.List;
/**
* Created by Administrator on 2018/11/13 0013.
*/
public class Test {
public static void main(String[] args){
//1.创建configuration对象
Configuration cfg = new Configuration();
//2.加载hibernate.cfg.xml
cfg.configure("/hibernate.cfg.xml");
//3.通过cfg创建会话工厂
SessionFactory factory = cfg.buildSessionFactory();
//4.从工厂中获取session连接
Session session = factory.openSession();
//5.执行操作
List<Course> list = session.createQuery("from Course ").list();
//6.关闭连接
session.close();
factory.close();
}
}
6,内容补充
使用hibernate完成常见的增删改查功能?
1.查询所有 createQuery list
2.查找一个对象 get load
3.保存一个对象 save
4.更新一个对象 update
5.删除一个对象 delete
执行3,4,5操作需要开启事务,开启事务 : session.beginTransaction();
最后关闭之前提交事务:session.getTransaction().commit();