mybatis一对一接连查询

发布时间 2023-08-30 11:00:09作者: Zzzz/

数据库中表一对一连接使用主键的形式连接,可以使用数据库内的连接数据库语言为:select *from user inner join user_info on user.id=user_info.id where id=#{id}

但只有查询出来的日志只能看见作为主类的字段信息,无法看见user_info的字段信息,需要我们将user_info的属性封装起来作为一个属性放入user的主类中。

 但是仅仅是这样只是将java中的类进行了封装,还需要将数据库中的信息放入user中。我们使用<resultMap>标签将我们查询设置的属性映射到数据库中,但infoData属性本身就封装过所以需要再次对user_info再次使用一对一映射

resultMap标签:当数据库字段名和类的成员变量名不一致的时候,作为封装对象的映射关系使用
包括,属性中有别的对象成员变量的时候
id:唯一标识
做多表查询的时候,最好把每个字段都映射上,避免出现字段名相同的情况

id标签:主键字段 column数据库的字段名 property类的成员变量名
result标签:除主键之外的字段

association标签:做一对一关联映射
property属性:类的成员变量名
resultMap属性:成员变量对应的对象映射关系

collection标签:做一对多关系映射