Hibernate实例实现(注解方式)添加两张关系表
来源:互联网 发布:vi是什么软件 编辑:程序博客网 时间:2024/05/17 04:06
1.新建两个实体类Employee.class 和 Company.class
2.新建一个主配置文件 ec-hibernate.xml(注解的方式省去映射文件)
<?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><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">408817</property><property name="dialect">org.hibernate.dialect.MySQL57Dialect</property><property name="show_sql">true</property><property name="hbm2ddl.auto">update</property><!-- 非注解 <mapping resource="com/jmx/ec/Employee-mapper.xml" /><mapping resource="com/jmx/ec/Company-mapper.xml" /> --><!-- 注解 --><mapping class="com.jmx.ec.Employee" /><mapping class="com.jmx.ec.Company" /></session-factory></hibernate-configuration>
3.Employee.class
package com.jmx.ec;import javax.persistence.Column;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.Id;import javax.persistence.JoinColumn;import javax.persistence.ManyToOne;import javax.persistence.Table;import org.hibernate.annotations.CascadeType;import org.hibernate.annotations.Cascade;import org.hibernate.annotations.GenericGenerator;/** * 员工 * */@Entity //实体@Table(name="employee") //表名@GenericGenerator(name="genid",strategy="increment") //主键生成策略public class Employee {@Id@GeneratedValue(generator="genid") //主键生成策略@Column(name="eid")private int eid;@Column(name="ename")private String ename;@ManyToOne@Cascade(value={CascadeType.SAVE_UPDATE})@JoinColumn(name="companyid")private Company company;public Company getCompany() {return company;}public void setCompany(Company company) {this.company = company;}public int getEid() {return eid;}public void setEid(int eid) {this.eid = eid;}public String getEname() {return ename;}public void setEname(String ename) {this.ename = ename;}}
4.Company.class
package com.jmx.ec;import java.util.Set;import javax.persistence.Column;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.Id;import javax.persistence.JoinColumn;import javax.persistence.OneToMany;import javax.persistence.Table;import org.hibernate.annotations.Cascade;import org.hibernate.annotations.CascadeType;import org.hibernate.annotations.GenericGenerator;/** * 公司 * */@Entity@Table(name="company")@GenericGenerator(name="genid", strategy="increment")public class Company {@Id@GeneratedValue(generator="genid")@Column(name="cid")private int cid;@Column(name="cname")private String cname;@OneToMany@Cascade(value= {CascadeType.ALL})@JoinColumn(name="companyid")public Set<Employee> employees;public int getCid() {return cid;}public void setCid(int cid) {this.cid = cid;}public String getCname() {return cname;}public void setCname(String cname) {this.cname = cname;}public Set<Employee> getEmployees() {return employees;}public void setEmployees(Set<Employee> employees) {this.employees = employees;}}
最后编写一个测试类:
//读取配置文件Configuration cfg =new Configuration();cfg.configure("ec-hibernate.xml");SessionFactory factory = cfg.buildSessionFactory();Session session = factory.openSession();Transaction transaction = session.beginTransaction();
阅读全文
1 0
- Hibernate实例实现(注解方式)添加两张关系表
- hibernate表关系注解方式
- hibernate关系注解方式
- 4、Hibernate 实体关系映射(一、单边一对多关系 注解、xml两种方式)
- hibernate 映射关系注解实现
- Hibernate之关系映射的两种方式(xml映射、annotation注解映射)
- 4、Hibernate 实体关系映射(二、单边多对一关系 注解、xml两种方式)
- Hibernate 基于注解的方式 实现的关系映射案例(一对一关系,一对多关系,多对多关系)
- hibernate注解方式来处理映射关系
- Hibernate注解方式处理映射关系
- hibernate注解方式来处理映射关系
- Hibernate映射关系(注解方式)
- Hibernate注解方式处理实体映射关系
- Hibernate多对多映射为第三张表manytomany【xml和注解】实例(十七)
- Spring 管理hibernate事物,xml配置,注解 两种实现方式
- 注解方式实现 Hibernate 的双向一对多关系的映射
- Hibernate中,One2Many和Many2One的双向映射关系的基于注解Annotation实现方式
- 2.2、Hibernate用注解方式实现一对多、多对多关系
- Java连接mongodb存取数据时调整日志输出级别
- spring cloud day06【Zuul-APIGateway】
- 前端html img src base64 的data 的类型参数
- Java调用cmd命令遇到的坑总结
- 动画播放器的控制动画和音频的播放和暂停
- Hibernate实例实现(注解方式)添加两张关系表
- MyApplication ImageUtils
- GreenDao的使用
- 网络工程学习笔记
- 音悦台视频、MV免费下载工具
- 不同html页面 相同部分代码的提取
- 通过maven查看依赖jar的源码
- BZOJ2748 DP
- SpringMVC整合FastJson:用"最快的json转换工具"替换SpringMVC的默认json转换