hibernate注解关联

来源:互联网 发布:asc软件 编辑:程序博客网 时间:2024/05/30 23:27

OntToOne

<!--Person类-->@Entity@Table(name="person")public class Person {    @Id    @GeneratedValue(strategy=GenerationType.AUTO)    private long id;    private String name;    /*     * mappedBy     * 由另一方来维护外键     * */    @OneToOne(targetEntity=Card.class,mappedBy="person")    private Card card;《!--Card类--》@Entity@Table(name="card")public class Card {    @Id    @GeneratedValue(strategy=GenerationType.AUTO)    private long cid;    private String cname;    @ManyToOne(targetEntity=Person.class)    @JoinColumn(name="id",unique=true)    @Cascade(value={CascadeType.SAVE_UPDATE})    private Person person;

OneToMany

<!--user类-->@Entity@Table(name="tb_user")public class User {    @Id    @GeneratedValue(strategy=GenerationType.AUTO)    private long uid;    private String name;    @OneToMany(targetEntity=Order2.class)    @JoinColumn(name="uid")    @Cascade(CascadeType.SAVE_UPDATE)    private Set<Order2> set = new HashSet<>();<!--Order类-->@Entity@Table(name="tb_order")public class Order2 {    @Id    @GeneratedValue(strategy=GenerationType.AUTO)    private long Oid;    private String name;    @ManyToOne(targetEntity=User.class)    @JoinColumn(name="uid")    @Cascade(CascadeType.SAVE_UPDATE)    private User user;

ManyToMany

<!--Student类-->@Entity@Table(name="tb_student")public class Student {    @Id    @GeneratedValue(strategy=GenerationType.AUTO)    private long sid;    private String name;    @ManyToMany(targetEntity=Teacher.class)    @JoinTable(name="tb_tea_stu",joinColumns={@JoinColumn(name="sid")},inverseJoinColumns={@JoinColumn(name="tid")})    @Cascade(CascadeType.SAVE_UPDATE)    private Set<Teacher> Teacherset = new HashSet<>();<!--Teacher类-->    @Entity@Table(name="tb_treacher")public class Teacher {    @Id    @GeneratedValue(strategy=GenerationType.AUTO)    private long tid;    private String name;    @ManyToMany(targetEntity=Student.class)    @JoinTable(name="tb_tea_stu",joinColumns={@JoinColumn(name="tid")},inverseJoinColumns={@JoinColumn(name="sid")})    @Cascade(CascadeType.SAVE_UPDATE)    private Set<Student> studentset = new HashSet<>();
原创粉丝点击