当前位置: 首页 > 图文教程 > Java技术 > 数据库持久层 > 数据库持久层:小编浅谈XDoclet 与Hibernate 映射

数据库持久层
持久层设计和数据库设计的原则
关于php的数据库持久层设计
在 SCA Module 中使用 Hibernate 框架实现数据持久层
流行持久层框架对数据库操作
Hibernate持久层操作
hibernate 的 log4j.properties 配置文件
Hibernate的映射类型 hibernate mysql映射类型
hibernate的findByExample
持久化对象PO
终于用hibernate把数据持久层写完了 小结下遇到的一些问题
理解PO类在数据层和VO类在逻辑层的区别
hibernate中使用session之一
hibernate映射到mysql数据库时应该注意的几点
在Struts和Hibernate之间搭起桥梁
Hibernate技术文章-基本配置和写法
Hibernate技术
Hibernate详解
Java数据库编程中的技巧
Hibernate 实体关联关系映射----总结
Hibernate中二级缓存的配置和使用

数据库持久层:小编浅谈XDoclet 与Hibernate 映射


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 586 ::
收藏到网摘: n/a

POJO 中融合XDoclet 的映射文件自动生成机制,提供了除手动编码和由数据库导出基础代码的第三种选择。

实际开发中,往往首先使用MiddleGen hbm2java 工具生成带有XDoclet tagPOJO。之后通过修改POJO中的XDoclettag进行映射关系调整。

XDoclet已经广泛运用在EJB开发中,在其最新版本里,包含了一个为Hibernate提供支持的子类库Hibernate Doclet,其中包含了生成Hibernate映射文件所需的ant构建支持以及java doc tag支持。

XDoclet实现基本原理是,通过在Java代码加入特定的JavaDoc tag,从而为其添加特定的附加语义,之后通过XDoclet工具对代码中JavaDoc Tag进行分析,自动生成与代码对应的配置文件,XDoclet

Hibernate-Doclet中,通过引入Hibernate相关的JavaDoc tag,我们就可以由代码生成对应的Hibernate映射文件。

下面是一个代码片断,演示了Hibernate-Doclet的使用方式:

/**

* @hibernate.class

* table="TUser"

*/

public class TUser implements Serializable {

……

/**

* @hibernate.property

* column="name"

* length="50"

* not-null="true"

*

* @return String

*/

public String getName() {

return this.name;

}

……

}

以上是使用Hibernate-Doclet 描述POJOTUser)及其对应表(TUser)之间映射关系

的一个例子。

其中用到了两个hibernate doclet tag@hibernate.class@hibernate.property

这两个tag分别描述了POJO所对应的数据库表信息,以及其字段对应的库表字段信息。

之后Hibernate Doclet就会根据这些信息生成映射文件:

<hibernate-mapping>

<class

name="net.xiaxin.xdoclet.TUser"

table="TUser"

> 

<property

name="name"

type="java.lang.String"

column="name"

not-null="true"

length="50"

> 

</class>

</hibernate-mapping>

这样我们只需要维护Java 代码,而无需再手动编写具体的映射文件即可完成Hibernate

基础代码。

熟记Hibernate-Doclet 众多的Tag,显然不是件轻松的事情,好在目前的主流IDE 都提

供了Live Template支持。我们只需进行一些配置工作,就可以实现Hibernate-Doclet Tag

的自动补全功能,从而避免了手工编写过程中可能出现的问题。