hibernate 核心配置文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory>
<!-- DataSource配置 -->
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost:3306/test</property>
<property name="connection.username">root</property>
<property name="connection.password"></property> <!-- 指定连接数据库所使用的SQL方言-->
<property name="dialect">org.hibernate.dialect.MySQLDialect</property> <!-- 控制台是否输出SQL语句 -->
<property name="show_sql">true</property>
<!-- 式化Hibernate的SQL输出语句 -->
<property name="hibernate.format_sql">true</property>
<!-- 指定程序是否在数据库自动创建表 -->
<property name="hbm2ddl.auto">update</property>
<!-- 指定映射文件的路径 -->
<mapping resource="zr/com/pojo/Company.hbm.xml"/>
<mapping resource="zr/com/pojo/Employee.hbm.xml"/>
</session-factory> </hibernate-configuration>

实体类与数据库表映射关系配置文件

<?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> <!-- 映射关系 -->
<class name="zr.com.pojo.Company" table="company">
<!-- 主键生成策略 -->
<id name="companyId" column="company_id">
<generator class="native"/>
</id>
<property name="name" column="company_name"/>
<!-- 一对一 -->
<one-to-one name="employee" class="zr.com.pojo.Employee" property-ref="company" cascade="all" constrained="true"></one-to-one>
</class> </hibernate-mapping>
<?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>
<!-- 映射关系 -->
<class name="zr.com.pojo.Employee" table="employee">
<!-- 主键生成策略 -->
<id name="id" column="employee_id">
<generator class="native"/>
</id>
<property name="name" column="employee_name"/>
<!-- 一对一 -->
<many-to-one name="company" class="zr.com.pojo.Company" column="company_id" cascade="all" unique="true">
</many-to-one>
</class>
</hibernate-mapping>
package zr.com.pojo;

public class Company {

    private int companyId;
private String name; private Employee employee; public Employee getEmployee() {
return employee;
}
public void setEmployee(Employee employee) {
this.employee = employee;
}
public int getCompanyId() {
return companyId;
}
public void setCompanyId(int companyId) {
this.companyId = companyId;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Company() {
super();
}
public Company(int companyId, String name) {
super();
this.companyId = companyId;
this.name = name;
}
@Override
public String toString() {
return "Company [companyId=" + companyId + ", name=" + name + "]";
} }
package zr.com.pojo;

public class Employee {

    private int id;

    private String name;

    private Company company;

    public int getId() {
return id;
} public void setId(int id) {
this.id = id;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public Company getCompany() {
return company;
} public void setCompany(Company company) {
this.company = company;
} public Employee() {
super();
} public Employee(int id, String name, Company company) {
super();
this.id = id;
this.name = name;
this.company = company;
} @Override
public String toString() {
return "Employee [id=" + id + ", name=" + name + ", company=" + company
+ "]";
} }
package zr.com.test;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import org.hibernate.service.ServiceRegistryBuilder; import zr.com.pojo.Company;
import zr.com.pojo.Employee; public class TestClass { public static void main(String[] args) { // 创建Configuration 对象
Configuration configuration = new Configuration().configure("hibernate.cfg.xml");
// 创建ServiceRegistry 对象
ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry();
// 创建SessionFactory 对象
SessionFactory sessionFactory = configuration.buildSessionFactory(serviceRegistry);
// 创建Session 对象
Session session = sessionFactory.openSession(); // 开启事务
session.beginTransaction();
// 创建实体类 Company company = new Company();
company.setName("baidu");
Employee employee = new Employee();
employee.setName("lf");
// 关联
company.setEmployee(employee);
employee.setCompany(company);
// 插入数据
session.save(employee); // 提交事务
session.getTransaction().commit(); }
}
05-27 23:59