`
守望者
  • 浏览: 55321 次
  • 来自: ...
社区版块
存档分类
最新评论

菜鸟学习hibernate笔记<二>

阅读更多

 

三、实体层设计----细粒度划分--Hibernate-- 组件映射
java 代码
1.          Person.java   
2.            
3.          /*  
4.           * Hibernate - 组件(Component)映射 
5.           * 创建日期 2005-4-10  
6.           * @author javamxj(分享java快乐) 
7.           * @link  Blog: htpp://javamxj.mblogger.cn    
8.           *              htpp://blog.csdn.net/javamxj/   
9.           */  
10.       package javamxj.hibernate.component;   
11.       /**  
12.        * @hibernate.class  
13.        */  
14.       public class Person {   
15.       private Long id;   
16.       private String username;   
17.       private Address address;   
18.       /**  
19.            * @hibernate.id   
20.            *  generator-class="hilo"   
21.            *  unsaved-value="null"  
22.            */  
23.       public Long getId() {return id;}   
24.       public void setId(Long id) {this.id = id;}   
25.       /**  
26.            * @hibernate.property   
27.            *  length="15"  
28.            *  unique="true"  
29.            *  not-null="true"  
30.            */  
31.       public String getUsername() {return username;}   
32.       public void setUsername(String username) {this.username = username;}   
33.       /**  
34.            * @hibernate.component  
35.            */  
36.       public Address getAddress() {return address;}   
37.       public void setAddress(Address address) {this.address = address;}   
38.       }   
39.         
 
·  Person类调用了Address类,注意在“getAddress()”方法上的“ @hibernate.component”标记。
 
·  Address类只含有一些“ @hibernate.property”标记,没有将其独立映射为一个表。
java 代码
1.          Address.java   
2.            
3.          package javamxj.hibernate.component;   
4.          public class Address {   
5.          private String country;   
6.          private String city;   
7.          private String street;   
8.          private String zipCode;   
9.          public Address() {}   
10.       public Address(String country, String city, String street, String zipcode) {   
11.       super();   
12.       this.country = country;   
13.       this.city = city;   
14.       this.street = street;   
15.       this.zipCode = zipcode;   
16.       }   
17.       /**  
18.            * @hibernate.property  
19.            *  length = "12"  
20.            */  
21.       public String getCity() {return city;}   
22.       public void setCity(String city) {this.city = city;}   
23.       /**  
24.            * @hibernate.property  
25.            *  length = "12"  
26.            */  
27.       public String getCountry() {return country;}   
28.       public void setCountry(String country) {this.country = country;}   
29.       /**  
30.            * @hibernate.property  
31.            *  length = "6"  
32.            */  
33.       public String getZipCode() {return zipCode;}   
34.       public void setZipCode(String number) {this.zipCode = number;}   
35.       /**  
36.            * @hibernate.property  
37.            *  length = "12"  
38.            */  
39.       public String getStreet() {return street;}   
40.       public void setStreet(String street) {this.street = street;}   
41.       public String toString(){   
42.       return ("居住在"+ country + city+""+ street+""  
43.       +   "\n\t邮政编码: "+ zipCode);   
44.       }   
45.       }   
46.         
 
xml 代码
1.          Person.hbm.xml   
2.            
3.          <?xml version="1.0" encoding="GBK"?>  
4.          <!DOCTYPE hibernate-mapping PUBLIC   
5.          "-//Hibernate/Hibernate Mapping DTD 2.0//EN"   
6.          "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd">  
7.          <hibernate-mapping  
8.          >  
9.          <class  
10.       name="javamxj.hibernate.component.Person"  
11.       dynamic-update="false"  
12.       dynamic-insert="false"
分享到:
评论

相关推荐

    java文集

    &lt;br&gt;ext学习笔记一&lt;br&gt;小试iBatis&lt;br&gt;RIA(Rich Internet Application)的现状和未来&lt;br&gt;Java应用中域名解析不过期的解决方法&lt;br&gt;Java编程那些事儿45—数组使用示例1&lt;br&gt;一步步熟悉OFBiz&lt;br&gt;用Java做客户端调用.NET写...

    Spring 和Hibernate 整合笔记和jar包

    - **一级缓存与二级缓存**:Hibernate的一级缓存是Session级别的,二级缓存是SessionFactory级别的,合理利用能提高性能。 - **懒加载(Lazy Loading)**:Hibernate支持关联对象的延迟加载,避免一次性加载大量...

    spring笔记

    在了解和学习Spring笔记中的Hibernate知识点时,我们能掌握如何利用Hibernate框架简化数据库操作,并深入理解其底层实现原理。这些知识点能帮助开发者高效地进行Java持久层的开发,提高代码质量和开发效率。

    通用后台管理界面框架.rar

    它引入了新的标签,如&lt;section&gt;、&lt;article&gt;和&lt;footer&gt;,使得页面结构更加清晰,增强了语义化。同时,HTML5还提供了离线存储、拖放功能、媒体元素等特性,使得后台管理界面更加互动和便捷。 二、Java:作为服务器端...

    java笔记--从菜鸟到j2se j2ee高手之路

    本笔记旨在帮助初学者从零基础逐步提升至J2SE(Java Standard Edition)和J2EE(Java Enterprise Edition)的高手水平。J2SE是Java的核心部分,提供了用于桌面应用程序和服务器端开发的基础框架;而J2EE则是Java在...

    2024最新版python、Java视频教程包括视频、笔记、源码

    视频教程提供了直观的学习方式,笔记能够帮助学习者梳理和复习重点知识,源码的提供则可以让学习者直接看到代码是如何被编写的,从而更好地理解编程概念。通过这样的学习材料,配合大量的实践和项目练习,学习者能够...

    李兴华老师.rar

    李兴华老师的笔记涵盖了Servlet、JSP、JSTL、EL表达式等Web开发基础,深入讲解了MVC设计模式以及Struts、Spring、Hibernate等主流框架的使用。此外,他还对EJB(Enterprise JavaBeans)进行了介绍,让读者了解企业级...

    extjs菜鸟做的动态accordion加动态tree

    标题中的“extjs菜鸟做的动态accordion加动态tree”意味着这个项目是初学者使用EXTJS库构建的一个功能,其中包括了动态的Accordion组件和动态的Tree组件。EXTJS是一个强大的JavaScript前端框架,它提供了丰富的用户...

    spring3.2.4

    4. **数据访问**:Spring 3.2.4加强了对JDBC、Hibernate、MyBatis等数据访问技术的支持,包括对JPA 2.1的支持,使得数据库操作更加方便和高效。 5. **事务管理**:Spring的事务管理功能在3.2.4中得到了增强,支持...

Global site tag (gtag.js) - Google Analytics