`
lifaming15
  • 浏览: 64710 次
  • 来自: ...
文章分类
社区版块
存档分类
文章列表
当你在写Hibernate映射文件时,当属性有几十甚至上百个时,你是不是觉得体力不支啊?特别是大型项目,有几十上百个表时,不管是开发还是后期维护,你都要一个一个的对比,查找,添加,修改,好想有一个好工具能帮我们做这件事. 有人用了MiddleGen,但是生成效果不好,需要我们手工修改. 我下面介绍一下在eclipse环境(All In One Eclipse 3.1.1+MyEclipse 4.1.0)下,使用xdoclet生成hbm文件的方法: 首先,你需要自己写POJO类,代码如下: package mypack; /*** @author lfm**//*** @hibernat ...
Hibernate还提供了一个CompositeUserType借口,它不仅能完成和UserType相同的功能,而且还提供了对Hibernate查询语言(HQL)的支持.下面通过例子来介绍CompositeUserType接口的方法. 假定在Customer类中包含了一个Name类型的name属性,代表客户的姓名.例1是Name类的源程序. 例1: package mypack; import java.io.Serializable; /*** @author lfm* */public class Name implements Serializable { private St ...
枚举类型是一种常见的Java设计模式.在枚举类型的Java类中,定义了这个类本身是一些静态实例.例1定义了一个Gender类,它包含两个静态常量类型的Gender实例:Gender.FEMALE和Gender.MALE.Gender类有两个属性:sex和description.sex属性代表性别的缩写,可选值'F'和'M';description属性代表性别的完整名字,可选值为"Female"和"MALE". 例1: package mypack; import java.io.Serializable;import java.util.Colle ...
本讲把Address设计为不可变类.所谓不可变类,是指当创建了这种类的实例后,就不允许修改它的属性.在Java API中,所有的基本类型的包装类,如Integer和Long类,都是不可变类,java.lang.String也是不可变类.在创建用户自己的不可变类时,可以考虑采用以下的设计模式. a.把属性定义为private final类型. b.不对外公开用于修改属性的setXXX()方法. c.只对外公开用于读取属性的getXXX()方法. d.允许在构造函数中设置所有属性. e.覆盖Object类的equals()和hashCode()方法 例1: package mypack ...
Hibernate提供了客户化映射类型接口,允许用户以编程的方式创建自定义的映射类型,以便把持久化类的任意类型的属性映射到数据库中.例1的PhoneUserType实现了net.sf.hibernate.UserType接口,它能够把Customer类的Integer类型的phone属性映射到CUSTOMER表的VARCHAR类型的PHONE字段. 例1: package mypack; import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java. ...
Global site tag (gtag.js) - Google Analytics