天天看点

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont

MySQL版数据库表结构

其中,PARENT_CODE字段即表示SYS_DICT_ITEM表的ITEM_CODE字段

先来看看XML方式的Hibernate映射关系

JavaBean类如下,简单起见,setter和getter方法省略了

Hibernate的XML映射文件如下:

换成注解方式的JavaBean代码如下:

这里也有一篇帖子是使用注解方式的,但是父对象类型是自定义的JavaBean,而不是简单的Java类型

<a href="http://guobin6125.iteye.com/blog/1597937">http://guobin6125.iteye.com/blog/1597937</a>

由于系统中需要将查询出来的JavaBean对象转换成json字符串,使用json-lib,父对象如果类型使用自定义的JavaBean,即DictItem类本身,转换成json字符串的时候就会报错,提示转换出现循环xxx,因此转换一下思路,使用String简单类型来保存关联关系即可。

关于Hibernate使用XML还是注解来维护映射关系,各有好处吧。并且,Spring框架也对Hibernate注解方式提供了很好的兼容性支持。

虽然XML内容是多了点儿,但是一般情况情况下,咱们也不会一个字符一个字符重新手写的,大部分都是拷贝过来修改的;而注解方式,虽然看起来简单,但是需要熟悉其中各种关系的配置方式,并且需要直接修改JavaBean类的代码,源码侵入性较强。

因此,选用适合的方式即可。