- 浏览: 559088 次
文章分类
- 全部博客 (235)
- 数据库 (12)
- j2se (10)
- JQuery (2)
- 经验总结 (4)
- 防毒 (1)
- Struts (20)
- Spring (12)
- 项目 (3)
- 电脑维修项目 (1)
- Eclipse (2)
- JSP (13)
- mysql (5)
- Hibernate (54)
- ssh (1)
- 学习网站 (1)
- tomcat (9)
- servlet (24)
- java语言基础 (1)
- jbpm (1)
- linux (0)
- 技巧积累 (1)
- javaBean (2)
- 设计模式 (2)
- 实用的操作 (9)
- oracle (1)
- UML学习 (1)
- 版本控制 (1)
- 框架 (9)
- javaWeb基础 (13)
- c语言 (0)
- ant (0)
- 关于权限 (3)
- 真正开发有用 (5)
- javascript (2)
- 算法 (1)
- J2EE (1)
- junit (1)
最新评论
-
alleni123:
不错 一搜就搜到这个了
ssession和servletContext的比较 -
hua7381:
楼主,你真实帮了大忙了!!
万能乱码处理---url传中文 -
albrich:
1楼是正解
摘] 装了个Tomcat遇到的问题 -
JA_mcj:
ssession和servletContext的比较 -
haotw:
看了很有帮助,总算对hibernate的延迟加载有一定的了解了 ...
[转]hibernate延迟加载
java 代码
- public class User implements java.io.Serializable {
- // Fields
- private long id;
- private String name;
多方拥有一方的属性Email将User作为自己的属性.
java 代码
- public class Email implements java.io.Serializable {
- // Fields
- private long id;
- private User user;
- private String email;
在配置文件中,一方的没啥变化.
xml 代码
- <hibernate-mapping>
- <class name="org.tie.User" table="user" catalog="tie">
- <id name="id" type="long">
- <column name="id" />
- <generator class="native" />
- </id>
- <property name="name" type="string">
- <column name="name" length="45" not-null="true" />
- </property>
- </class>
- </hibernate-mapping>
在多方需要加入many-to-one
xml 代码
- <hibernate-mapping>
- <class name="org.tie.Email" table="email" catalog="tie">
- <id name="id" type="long">
- <column name="id" />
- <generator class="native" />
- </id>
- <many-to-one name="user" class="org.tie.User" fetch="select">
- <column name="uid" not-null="true" />
- </many-to-one>
- <property name="email" type="string">
- <column name="email" length="45" not-null="true" />
- </property>
- </class>
- </hibernate-mapping>
java 代码
- public void testCreate(){
- Email email1 = new Email();
- email1.setEmail("linweihan@163.com");
- Email email2 = new Email();
- email2.setEmail("linweiyang@163.com");
- User user = new User();
- user.setName("lin");
- email1.setUser(user);
- email2.setUser(user);
- Session session = factory.openSession();
- Transaction tr = session.beginTransaction();
- session.save(user);
- session.save(email1);
- session.save(email2);
- tr.commit();
- session.close();
- }
- public void testRetrieve(){
- Session session = factory.openSession();
- Email email = (Email)session.load(Email.class, new Long(1));
- System.out.println(email.getUser().getName());
- session.close();
- }
评论
1 楼
terryyang
2007-12-22
当把User删掉之后,再加载Email时,就会报异常,因为引用的user已经不存在了,当然可以设置Email中User的not-found="ignore",但这样当加载Email时都要多发生一条sql去查询看是否对应的user还存在,如果一个实体中有多个这样的字段,性能很差,不知道你是如何解决的
发表评论
-
多对多双项关联
2007-12-02 16:39 4029数据库中仍然是利用一个中间表 持久化类中,都各自包含对方的集合 ... -
多对多单项关联
2007-12-02 16:02 44331.多对多单项关联 在数据库中多对多的关系,表之间设置一个中间 ... -
一对一关联
2007-12-02 14:13 3590一对一的关联 分为外键关联和主键关联 外键关联:在关系模型的表 ... -
双向的多对一或者双向的一对多
2007-12-02 00:38 3541一对多或者多对一都是从一方来看, 双向是从两个方向来看 这个时 ... -
一对多的另一个问题
2007-12-02 00:19 3265如果email 的一方设置uid 不能为空的话回报错,所以需要 ... -
做一对多遇到的几个问题(单向)
2007-12-02 00:14 3234java 代码 public class Use ... -
hibernate多对一
2007-12-01 22:59 4225处理多对一的时候 感觉关系模型多对一和一对多是一样的 在域模型 ... -
[转]Hibernate中的outer-join(二):fetch
2007-12-01 22:49 4561... -
hibernate中集合排序
2007-12-01 18:49 3662set,map可以支持内存排序和数据库排序 List什么都不支 ... -
[转] hibernate中给集合排序的方法
2007-12-01 18:47 5726<iframe style="MARGIN ... -
[转]集合类型和结果集排序
2007-12-01 18:39 3437言归正传,Hibernate中的Collection类型分为有 ... -
[转]hibernate延迟加载
2007-12-01 18:22 5933hibernate 延迟加载问题探 ... -
[转]主键自动生成办法
2007-12-01 18:11 3381... -
[转]hibernate中的 bag--解释的太好了.
2007-12-01 17:25 20381Bag是集合,与Set不同的是,Bag允许重复的元素, 在Ja ... -
hibernate值类型集合映射之Map
2007-12-01 17:02 2853java 代码 public class Use ... -
hibernate值类型集合映射之List
2007-12-01 16:43 3272java 代码 public class Use ... -
值类型映射---Set(2)
2007-12-01 13:43 3076这里自定义Email类,set里面放的是 email 类,非 ... -
值类型映射---Set(1)
2007-12-01 13:20 3361这里介绍2种不同的域模型的设计, 一种是Set里面装Strin ... -
事务的作用
2007-12-01 12:41 4526事务的作用是为了防止修改数据库, 如果只是查询那么就没必要修改 ... -
hibernate中用于分页的方法.
2007-12-01 00:14 3202java 代码 public void test ...
相关推荐
多个学生可以被一个老师教【多对一映射】 部门与员工: 一个部门有多个员工【一对多映射】 多个员工属于一个部门【多对一映射】 1.2:多对多,举例说明: 项目和开发员工:【双向一对多即多对多映射】 一个项目有多...
测试代码举例测试代码举例测试代码举例测试代码举例测试代码举例测试代码举例
Hibernate 一对多 多对多 保证代码完整性,能够很好的理解之间的关系。
CRF 就像一个反向的隐马尔可夫模型(HMM),两者都是用了马尔科夫链作为隐含变量的概率转移模型,只不过 HMM 使用隐含变量生成可观测状态,其生成概率有标注集统计得到,是一个生成模型;而 CRF 反过来通过可观测状态...
范式举例.doc 对于不了解三个范式的朋友是个很好的帮助
vc 多线程 举例
一个网站设计过程举例.docx.docx
dhcp典型配置举例
SSM整合详细举例SSM整合详细举例SSM整合详细举例SSM整合详细举例SSM整合详细举例SSM整合详细举例
MRP计算举例.
值不值得就看各位对HF这本书的认同了,, 里面我使用visual paradigm site 3.4版 进行举例化的 UML图和JAVA源代码实现 而且有专有QQ群去讨论。 VP画的UML图是非常的漂亮,VP也是近来在ECLIPSE环境下使用比较高的一...
86以MySQL单表查询来举例,看看执行计划包含哪些内容(1)?.pdf
多媒体制作选择题 用于完成作业 特别是多媒体老师布置的作业
MVCC机制举例
是关于c#的一个反射举例,希望大家对C#的反射能够一个很好的认识,帮助大家更请简单的理解其中的意思
modbus举例modbus举例modbus举例modbus举例modbus举例modbus举例
一个简单的ACM项目以部分代码举例
正则表达式一看就会 有详细举例,超简单,不要积分与大家分享....
设计模式和举例代码 设计模式和举例代码 设计模式和举例代码
通过一个ajax的实例来说明异步调用的优越之处。