JPA 注解 OneToMany和ManyToOne
2015-07-27 16:43
393 查看
本例涉及的表(ym_user)一的一方,表(ym_sub_user)多的一方,在写代码时,需要建立表,并建立ym_sub_user中设置外键关联ym_user。表的字段如下: ym_user(id,name) ym_sub_user(id,user_id,subname)
其中user_id是外键关联表ym_user
两个体类的代码如下:
@Entity @Table(name = "YM_USER") public class User { @Id @GeneratedValue(strategy = GenerationType.AUTO) private int id; @Column(name = "name") private String name; @OneToMany(mappedBy="user",fetch=FetchType.EAGER) private Set<SubName> subNameList = new HashSet<SubName>(); 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 Set<SubName> getSubNameList() { return subNameList; } public void setSubNameList(Set<SubName> subNameList) { this.subNameList = subNameList; } }
@Entity @Table(name = "ym_sub_user") public class SubName { @Id private int id; @Column(name = "sub_name") private String subName; @ManyToOne(targetEntity = User.class) @JoinColumn(name="user_id") private User user; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getSubName() { return subName; } public void setSubName(String subName) { this.subName = subName; } }
这样就完成了一对多和多对一的注解
相关文章推荐
- JS禁止选中文本方法
- suse11下创建分区,并设置开机自动挂载
- hive安装
- Python获取CPU使用率、内存使用率、网络使用状态
- allowInvalidCertificates
- nyoj 括号配对问题(栈)
- 自考
- 【试水CAS-4.0.3】第08节_CAS客户端配置单点登出
- Windows下pip安装包报错:Microsoft Visual C++ 9.0 is required Unable to find vcvarsall.bat
- Virtualbox网络设置和无UI启动
- 怎么通过 Microsof Office Project 2010 来写功能开发计划
- Android 用户界面【level 1】
- Android SDK Android NDK Android Studio 官方下载地址
- 不重复随机数列生成算法
- 玩转Nodejs的集群
- nyoj269VF
- Error:activity xxx has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@41971600
- mybatis分页时报错, '@P0' 附近有语法错误
- jquery插件编写(以折叠面板为例)
- 数据结构之插入排序--折半插入排序