- 浏览: 437931 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (211)
- 思考》感想 (11)
- 数据库操作 譬如Oracle大叔 (7)
- java,咱们有缘吗 (16)
- delphi,你还好吗 (2)
- SSH,哥三儿好 (31)
- 问题!问题?问题!? (9)
- WITH WORK (1)
- 算法与模式 莫事^_^ (10)
- JSP,可以叫你P兄么 (2)
- 啊,咋科斯╮(╯▽╰)╭ (6)
- 巨人肩上的小石子 (2)
- flash她妹flex (38)
- 项目管理 (10)
- 奥特曼,你弟Android来了 (4)
- 麻辣儿gis (0)
- maven 嘛味儿 (3)
- ws 哇塞 webservice (5)
- Oh,no!!!,NoSql (1)
- QQ他哥也是个企鹅,Linux (6)
- 姓i还是姓my 你都叫batis ibatis (3)
- 我喜欢夏天(春天旁边的那个季节)Springside (1)
- 测试! 测就测吧,没有喝(⊙o⊙) (3)
- 是晕+_+ 是浮云 还是云计算 (4)
- ExtJS 你是flex他哥还是他妹 (10)
- svg 你丫的资料真少 (3)
- 叫屁屁还是叫加加 ⊙﹏⊙ c++ (5)
- 鸟,还是只百灵鸟 BIRT (1)
- 权限管理 有权真好 是吧-_-! (1)
- SSH (2)
- 哥三儿好 (2)
- nginx (1)
- Oh (1)
- no!!! (1)
- NoSql (1)
最新评论
-
mong619226543:
谢谢
No identifier specified for entity -
akka_li:
没看懂啥意思!什么原因导致java.net.SocketExc ...
java.net.SocketException: Connection reset 问题解决方法 -
west_jing:
1L正解,<mvc:annotation-driven/ ...
<mvc:default-servlet-handler/> 导致 Controller失效 -
u010954806:
tgfhfdhdf
Spring Security 国际化文件 messages_zh_CN.properties 中文解释 -
yenshen:
我也碰到这个问题了,找了一大圈,最终问题解决了:<con ...
<mvc:default-servlet-handler/> 导致 Controller失效
其实这些东东完全可以参考帮助文档;这里只是总结下。
》》》一对一映射
妻子类
丈夫类
》》》一对多映射
班级类
学生类
》》》多对多映射
用户类
角色类
》》》联合主键映射
有三种方式 这里只是其中一种。
主键类 (实现Serializable接口,重写hashCode、equals方法)
用到主键类的学生类
》》》组件映射
组件类
用到组件类的类
》》》外键映射
学生类
》》》继承映射
若把父类@MappedSuperclass换成@Entity则只生成一张表 且包含所有子类信息!!
父类Cat类
子类1
子类2
》》》一对一映射
妻子类
@OneToOne @JoinColumn(name="husbandID") public Husband getHusband() { return husband; }
丈夫类
@OneToOne(cascade=CascadeType.ALL,mappedBy="husband") public Wife getWife() { return wife; }
》》》一对多映射
班级类
@OneToMany(mappedBy="class1",fetch=FetchType.LAZY) public Set<Student> getStudents() { return students; }
学生类
@ManyToOne(fetch=FetchType.EAGER) @JoinColumn(name="classID") public Class1 getClass1() { return class1; }
》》》多对多映射
用户类
@ManyToMany(targetEntity=com.xj.model.Role.class, cascade=CascadeType.PERSIST) @JoinTable(name="t_user_role", joinColumns=@JoinColumn(name="userID"), inverseJoinColumns=@JoinColumn(name="roleID")) public Set<Role> getRoles() { return roles; }
角色类
@ManyToMany(targetEntity=com.xj.model.User.class, mappedBy="roles") public Set<User> getUsers() { return users; }
》》》联合主键映射
有三种方式 这里只是其中一种。
主键类 (实现Serializable接口,重写hashCode、equals方法)
public class NamePK implements Serializable{ private String firstName; private String lastName; public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((firstName == null) ? 0 : firstName.hashCode()); result = prime * result + ((lastName == null) ? 0 : lastName.hashCode()); return result; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; final NamePK other = (NamePK) obj; if (firstName == null) { if (other.firstName != null) return false; } else if (!firstName.equals(other.firstName)) return false; if (lastName == null) { if (other.lastName != null) return false; } else if (!lastName.equals(other.lastName)) return false; return true; } }
用到主键类的学生类
@IdClass(NamePK.class) @Entity @Table(name="t_student") public class Student { ...... @Id public String getFirstName() { return firstName; } @Id public String getLastName() { return lastName; } }
》》》组件映射
组件类
@Embeddable public class NamePK implements Serializable{
用到组件类的类
private NamePK namePK;
》》》外键映射
学生类
@ManyToOne(fetch=FetchType.EAGER) @JoinColumn(name="classID") public Class1 getClass1() { return class1; }
》》》继承映射
若把父类@MappedSuperclass换成@Entity则只生成一张表 且包含所有子类信息!!
父类Cat类
@MappedSuperclass public class Cat {}
子类1
@Entity @Table(name="t_beijingcat") public class BeijingCat extends Cat {
子类2
@Entity @Table(name="t_shanghaiCat") public class BeijingCat extends Cat {
发表评论
-
Spring Security 国际化文件 messages_zh_CN.properties 中文解释
2011-05-04 17:08 7135Spring Security 国际化文件 messages_ ... -
两个Spring Security问题
2011-05-04 17:06 2106两个Spring Security问题 ---------》 ... -
一个spring security 配置列子
2011-05-03 16:48 1262<?xml version="1.0" ... -
spring security与数据库交互实现简单例子
2011-04-19 16:34 1677spring security与数据库交互实现简单例子 最近 ... -
用struts2 验证用户登录demo
2011-01-28 15:38 2182用struts2 验证用户登录de ... -
Struts2.1.8 执行顺序
2011-01-28 15:18 888public class LoginAction extend ... -
Struts2令人纠结的一个问题
2011-01-27 09:47 1007我用Struts2加入自定义的library如下图,就报错, ... -
一份spring配置文件
2011-01-13 14:05 982<?xml version="1.0" ... -
No identifier specified for entity:XX.xx
2010-10-12 17:25 1683No identifier specified for ent ... -
Annotation对Hibernate中联合主键定义
2010-10-11 13:28 2236public class User { private in ... -
@MappedSuperclass的用法
2010-10-11 10:21 12658@MappedSuperclass的用法 用在实体的继承过程 ... -
公共dao的结构
2010-09-29 16:17 1377-----------》公共dao的结构 -----共用接口 ... -
No identifier specified for entity
2010-09-29 16:07 12019org.hibernate.AnnotationExcepti ... -
SSJ配置模板
2009-09-14 09:06 897web.xml-----> <?xml versi ... -
一个简单的ssh配置模板
2009-09-12 17:08 1729web.xml------> <?xml vers ... -
Struts----学习笔记 用form提交和sturts提交
2009-09-12 17:02 1232struts是这么配置的 <action path= ... -
Spring学习笔记------Spring和Hibernate的整合配置
2009-09-12 09:15 1422Spring和Hibernate整合配置有两种方式: 方 ... -
Spring学习笔记--------AOP操作
2009-09-10 10:29 1069* AOP操作可与通过注解和xml的方式实现; * 有个问题, ... -
Hibernate学习笔记1--------一个简单的应用
2009-08-30 08:26 1030工具类---------> /** *用单例模式 ... -
Hibernate学习笔记2--------------------一对多、多对一简单配置
2009-08-30 08:40 1012一的一端------------------------> ...
相关推荐
hibernate开发的关系: one-to-one,many-to-one,many-to-many学习经验总结
**标题:“Hibernate关系映射”** 在Java世界中,Hibernate是一个强大的对象关系映射(ORM)框架,它允许开发者将数据库操作转化为面向对象的方式,极大地简化了数据持久化的复杂性。"多对一"关系映射是Hibernate...
hibernate表映射一直记不住,这次总结一下,放便下次使用。。。
### Hibernate关系映射详解 #### 一、引言 Hibernate是一种广泛使用的Java持久化框架,它简化了对象关系映射(Object-Relational Mapping,简称ORM)的过程,使得开发人员可以更加专注于业务逻辑的实现而无需过多...
**二、Hibernate关系映射的类型** 1. **一对一(OneToOne)**: 表示一个实体对应另一个实体的唯一实例。这可以通过在两个类中都定义`@OneToOne`注解来实现,并通过`mappedBy`属性指定被引用的一方。 2. **一对多...
对Hibernate映射关系详细总结,可以帮助你学习Hibernate知识
Hibernate,作为Java中广泛使用的对象关系映射(ORM)框架,提供了一种优雅的方式来映射枚举类型到数据库。本文将深入探讨Hibernate如何映射枚举类型,并给出实际应用示例。 ### Hibernate枚举映射方式 #### 1. `@...
### Hibernate实体关联关系映射详解 #### 一、引言 Hibernate作为一种强大的对象关系映射(Object Relational Mapping,简称ORM)框架,在Java开发领域扮演着极其重要的角色。它不仅简化了持久化层的开发工作,...
在Java的持久化框架Hibernate中,集合映射是将数据库中的表关系映射到对象的集合属性上,以便实现对象关系映射(ORM)。本文将深入探讨Hibernate中的四种主要集合映射类型:Set、List、Array和Map,以及它们在实际...
在Java开发中,Hibernate是一个非常重要的对象关系映射(ORM)框架,它允许开发者使用面向对象的方式来操作数据库,极大地简化了数据库操作。本教程将详细讲解Hibernate中的关联关系映射配置,帮助你理解和掌握如何...
总结,Hibernate的关联关系映射是其强大的功能之一,通过合理的配置,我们可以轻松地在Java对象和数据库表之间建立复杂的关系,实现对象的持久化。理解并熟练运用这些映射方式,对于提升Java应用的数据管理效率至关...
"Hibernate映射配置实例大全"是一个全面深入的资源,旨在帮助开发者理解和掌握如何有效地配置Hibernate以实现对象关系映射(ORM)。在这个文档中,我们将探讨各种关键的映射配置方法,以及相关的实例。 首先,我们...
**标题:“Hibernate关系映射”** 在Java编程中,Hibernate是一个流行的对象关系映射(ORM)框架,它允许开发者将数据库操作转化为对Java对象的操作,从而简化了数据存取的过程。关系映射是Hibernate的核心特性之一...
Hibernate是一个开源的ORM(Object Relational Mapping,对象关系映射)框架,用于Java应用与关系型数据库之间的交互。它通过使用描述对象和数据库之间映射的元数据,将应用业务逻辑中使用的Java对象自动持久化到...