Hibernate4之多对一单向关联
2015-11-25 00:00
393 查看
一个客户可以有多个订单,订单对应一个客户的关系就是多对一。
在这里多对一的关系是@ManyToOne,默认是非延迟加载的。如果要设置懒加载必须设置fetch = FetchType.LAZY,但是既然配置了多对一,肯定是希望加载订单的时候加载出客户信息的。
在这里多对一的关系是@ManyToOne,默认是非延迟加载的。如果要设置懒加载必须设置fetch = FetchType.LAZY,但是既然配置了多对一,肯定是希望加载订单的时候加载出客户信息的。
/** * @author Chou * @since 2012-8-8 * ...客户实体 * */ @Entity @Table(name = "TAB_CUSTOMER") @SequenceGenerator(name = "seq", sequenceName = "SEQ_CUSTOMER", allocationSize = 1) public class Customer { private Long id; private String cname; private String address; private String phone; @Id @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "seq") public Long getId() { return id; } public void setId(Long id) { this.id = id; } ...... }
/** * @author Chou * @since 2012-8-8 * ...订单实体(多对一关系维护方) * */ @Entity @Table(name = "TAB_ORDER") @SequenceGenerator(name = "seq", sequenceName = "SEQ_ORDER", allocationSize = 1) public class Order { private Long id; private String orderno; private Double money; private Customer customer; @Id @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "seq") public Long getId() { return id; } public void setId(Long id) { this.id = id; } ..... @ManyToOne @Cascade(value = { org.hibernate.annotations.CascadeType.SAVE_UPDATE }) @JoinColumn(name = "CUSTOMERID") public Customer getCustomer() { return customer; } public void setCustomer(Customer customer) { this.customer = customer; } }
相关文章推荐
- Hibernate Oracle sequence的使用技巧
- jsp Hibernate批量更新和批量删除处理代码
- jsp hibernate的分页代码第1/3页
- JAVA+Hibernate 无限级分类
- SSH整合中 hibernate托管给Spring得到SessionFactory
- jsp hibernate 数据保存操作的原理
- hibernate中的增删改查实现代码
- 解决hibernate+mysql写入数据库乱码
- java优化hibernate性能的几点建议
- java Hibernate延迟加载
- hibernate 常用方法介绍
- JQuery+Ajax+Struts2+Hibernate框架整合实现完整的登录注册
- 深入理解Hibernate中的flush机制
- 简单的手工hibernate程序示例
- 解析使用jdbc,hibernate处理clob/blob字段的详解
- 浅析java程序中hibernate的应用总结
- java面试常见问题之Hibernate总结
- 关于Hibernate的一些学习心得总结
- 浅析Java的Hibernate框架中的缓存和延迟加载机制
- Hibernate管理Session和批量操作分析