首页 > 代码库 > mybatis多对一关联

mybatis多对一关联

mybatis多对一关联查询实现

1.定义实体

 

定义实体的时候需要注意,若是双向关联,就是说双方的属性中都含有对方对象作为域属性出现,

 

那么在写toString()方法时需要注意,只让某一方输出即可,不要让双方的toString()都输出对方,

 

这样会形成递归调用,程序会出错,报堆栈溢出。

 

 

Country实体类

 技术分享

 

Minsiter 实体类

技术分享

 

 

2.数据库设计

a) country数据库

 技术分享

 

b) minsiter数据库

技术分享

 

3.DAO层设计

 技术分享

 

4.service层设计

技术分享

 

5.impl实现类

 技术分享

6.Controller

 技术分享

 

7.最关键的是映射文件的配置,countryMapper.xml配置文件

 技术分享

 

 

这里值得注意的是:<resultMap>中即使result中的字段名和属性名相同,也必须写出他们的映射关系,因为框架是根据这个<resultMap>封装对象的。另外,在映射文件中使用<association>标签体现两个实体间的关联关系,其两个属性的意义:

 

Property:指定关联属性。在本案例中就是Country对象的属性名字。

 

javaType:关联对象属性的类型。

mybatis多对一关联