-
一对一单向外键:(写在主表内)
@oneToOne(cascade=CascadeType.ALL)
cascade:级联关系
CascadeType.ALL:全级联关系-----级联删除,级联更新,级联添加
@JoinColumn(name="pid",unique=true)
name:主表的外键,unique:外键也是唯一的
注意:先保存外键对象,再保存主表对象
顺序:
1,编写Students实体类(必须添加@Entity注解才能在数据库创建表)
2,编写IdCard实体类(pid,pname)
@Entity设置实体类,
@Id
@GeneratedValue(generator="pid")
@GenericGenerator(name="pid",strategy="assigned")
@Column(length=18)
设置主键
设置构造函数,getset等
3,将IdCard类当做Students的属性,并在此属性的get方法上设置外键主键
@OneToOne(cascade=CascadeType.ALL)
@JoinColumn(name="pid",unique=true)
4,配置xml文件,映射类
5,编写测试文件,SchemaExport生成数据表
查看全部 -
学生(有外键)为主控方,教师(配置主键及生成策略)为被控方。
在学生表中的教师集合上加注解,
@ManyToMany
@Jointable(name="teachers_students"
joinColumns={@joincolumn(name="sid")},
inverseJoinColumns={@JoinColumn(name="tid")}
)
在这里joinColumn表示的是学生的主键
inverseJoinColumns表示的是教师的主键
并且在教师表中添加@id注解,主键生成策略。
teachers_students 第三张表,相当于子表。
有mappedby属性的为被控方,主表。
joinColumn属性的为主控方,从表。
查看全部 -
hibernate属性级别注解: 添加方式: 1.属性字段上 2.属性字段的get方法上查看全部
-
单向外键主控类对于被控类透明。主控类知道被控类。双向外键主被控类双方都知道 1.一对一双向:在一对一单向基础上,在被控类中添加主控类的对象,并且添加@OneToOne注解,且该注解的属性mappedBy必须设置,设置成主控类中被控类的对象: eg: @OneToOne(MappedBy="xx") 其中xx是主控类中被控类的对象名字查看全部
-
一对一双向外键联合主键查看全部
-
在studengt类的studengtpk字段上用@EmbeddedId(不要@Embedde)使用嵌入式主键类实现复合主键,同时在studengtpk的类注解上仍要加上Embedable注解以表明嵌入类身份,同时注意类中属性使用@length注解规定string类型对应字段的长度。 嵌入式主键类必须实现serializable接口,可添加serializableid,必须有默认的无参数的public无参数的构造方法,必须覆盖equals和hashcode方法,即@override。查看全部
-
@Entity配置实体类 @Table配置表名 @Embeddable;可嵌入类,在别的类中充当属性,结合@EmbeddedId实现一对一联合主键 @Id主键 @GeneratedValue配置主键策略等 @Column对应数据库表中字段 @Embedded标注一个实体类的嵌入类 @EmbeddedId嵌入主键id @Transient忽略生成表中的字段查看全部
-
关系映射级别注解查看全部
-
@Enbeddable是嵌入类注解查看全部
-
使用string类型作为主键,不用generatedvalue的默认值,需要给它生成一个generator,指定手工生成策略。而且需要给它的主键设定大小,255已超过最大的长度。查看全部
-
Ps1:对于复合主键,实体类必须实现serializable接口(声明式接口,不需要实现任何方法)。 Ps2:将 String类型 的属性设置成主键是一定要指定该属性的长度,可以用 Column length 注解来指定,不然 MySQL 会默认让其长度为255,而 MySQL 主键的长度不允许太长。(即使,Ps1成功实现,但是如果Ps2不通过,即使Junit变为绿条,表也创建不成功)查看全部
-
嵌入类虽然不会生成单独的表,但是会在被嵌入的表中把自己的字段加进去生成查看全部
-
Hibernate注解——总结 II 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】查看全部
-
Hibernate注解——总结 I 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】查看全部
举报