三、实体层设计----细粒度划分--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"
分享到:
相关推荐
<br>DFS文件读写<br>网络爬虫之Spider<br>Java正则表达式的总结关键词: Java正则表达式 <br>批量上传--采集 (多个文件夹)<br>The Agile Way<br>hibernate mapping文件中的标记详解:关系标记<br>ANT 安装使用及...
本资源“新手html学习笔记(仅供菜鸟成长参考).rar”为初学者提供了一条理解并掌握HTML的途径。下面将详细阐述HTML的相关知识点。 一、HTML概述 HTML是一种用于创建网页的标准标记语言,它由一系列元素组成,这些...
功能比较简单,比较适合菜鸟级的朋友们学习研究!<br><br>联系作者:<br>CSDN主页:http://hi.csdn.net/yuxiangshui<br>校内网主页:http://xiaonei.com/getuser.do?id=221012237<br>QQ:115402708<br><br>注:...
全自动程序升级,保证第一时间体验最新版本<br><br>本人菜鸟,以上功能肤浅,还请各位多多提意见。<br><br><br>我的个人主页:http://www.dirain.cn/<br><br>博客园:http://dirain.cnblogs.com/<br><br>QQ:562342<br>...
全自动程序升级,保证第一时间体验最新版本<br><br>本人菜鸟,以上功能肤浅,还请各位多多提意见。<br><br><br>我的个人主页:http://www.dirain.cn/<br><br>博客园:http://dirain.cnblogs.com/<br><br>QQ:562342<br>...
在`<body>`部分,常见的元素有`<h1>`至`<h6>`(标题)、`<p>`(段落)、`<a>`(链接)、`<img>`(图像)等。例如,一个简单的HTML页面可能包含如下代码: ```html <!DOCTYPE html> <html> <head> <title>我的第一...
点对点多线程文件传输<br>功能:<br>1。异步模式<br>2。多线程<br><br>说明:<br>1。程序不是我写的,大家学习用,其中有基本多线程传输的头文件。<br>2。程序已经转换过,可以在VC++6。0中运行<br>3。菜鸟学习用,...
JavaScript是Web开发中不可或缺的一部分,尤其对于初学者来说,理解并掌握其基本概念和操作至关重要。...通过实践这些例子,菜鸟们能够建立起对JavaScript基础的扎实理解,为进一步深入学习打下坚实的基础。
中国学生城5.0下载,希望的下.<br> 中国学生城5.0下载,希望的下.<br> 演示地址一:http://www.7to23.com<br> 这个是5.1的<br> 演示二:http://www.dwsp.net/dvbbs<br> <br> <br> 如果有问题,请去投诉与建议版面提出...
具体如下:<br><br>1,修复了上一版本中在英文操作系统中中文显示为乱码的问题.(在此感谢蛋白兔子参与测试)<br>2,重新为IceLight设计了一款新图标,菜单使用OFFICE XP的风格.<br><br>二.系统<br><br>1,进程\线程中增加...
<br> <br> <br> 二、V1.2 升级说明<br> <br> 1、本次升级优化了几乎所有的代码,新增加plus_sports_editgame.asp,plus_sports_admin.asp,plus_sports_log.asp三个文件<br> <br> 2、增加发布比赛后编辑修改的功能,...
4. **表格(Table)**:`<table>`、`<tr>`、`<td>`和`<th>`用于创建表格,`<thead>`、`<tbody>`和`<tfoot>`分别定义表头、主体和页脚部分。 5. **列表(Lists)**:`<ul>`和`<ol>`创建无序和有序列表,`<li>`定义...
动网6.0/6.1/7.0计数器<br> <br> 程序修改:试用爱情<br> 源程序:毒爱计数器<br> <br> 说明:本程序是我修改了毒爱计数器得来的,用来为统计动网论坛的日访问题也设计。<br> <br> 安装后就显示在论坛的底部。可以...
还有一些我不记得了<br> <br> <br> 二 安装说明<br> <br> 首次安装的用户只需上传即可,然后执行install.cgi就行了<br> <br> <br> 升级安装的用户 请先按照雷傲官方XP升级方法进行升级安装.<br> 然后请将您FTP软件的...
此外,PPT可能还会涉及文本格式化标签,如<h1>到<h6>的标题级别,<p>段落,<strong>加粗,<em>斜体等,以及如何创建链接<a>和图像<img>。 接着是"HTML.ppt",这个可能是更深入的HTML教程,可能涵盖了更复杂的元素和...
例如,`<h1>`至`<h6>`用于标题,`<p>`用于段落,`<a>`用于创建链接等。 3. **属性**:HTML标签可以有属性,属性提供了更多的信息。比如,`<a>`标签的`href`属性定义了链接的目标地址,`<img>`标签的`src`属性指定了...
2. **HTML标签**:HTML标签用于标记内容的性质,例如`<h1>`到`<h6>`用于标题,`<p>`用于段落,`<a>`用于创建链接,`<img>`用于插入图像,`<div>`作为内容分组的容器,`<ul>`和`<li>`用于无序列表,`<ol>`和`<li>`...
7. **表单元素**:`<form>`、`<input>`、`<select>`、`<textarea>`等用于创建用户输入和交互的表单。 8. **HTML5新特性**:包括新的语义化标签(如`<article>`、`<section>`)、离线存储、音频视频处理、canvas绘图...
2. 注意事项<br>My97DatePicker目录是一个整体,不可破坏里面的目录结构,也不可对里面的文件改名,可以改目录名 <br>My97DatePicker.htm是必须文件,不可删除 <br>各目录及文件的用途: <br>WdatePicker.js 配置文件,在...
主要功能:<br>1. 安装监视: 监视软件一举一动,生成准确卸载记录。<br>2. 智能卸载: 彻底干净的卸载各类顽固软件。<br>3. 卸载维护: 维护安装软件清单,2种方式快速卸载软件。<br>4. 垃圾清理: 清除90多种垃圾文件及...