Mybatis一对多关联关系映射实现过程介绍

本篇内容主要讲解“Mybatis一对多关联关系映射实现过程介绍”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Mybatis一对多关联关系映射实现过程介绍”吧!

创新互联公司专注于邗江网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供邗江营销型网站建设,邗江网站制作、邗江网页设计、邗江网站官网定制、小程序定制开发服务,打造邗江网络公司原创品牌,更为您提供邗江网站排名全网营销落地服务。

一对多关联关系只需要在多的一方引入少的一方的主键作为外键即可。在实体类中就是反过来,在少的一方添加多的一方,声明一个List<另一方> 属性名 作为少的一方的属性。

用户和订单就是一对多的关系,从用户角度看就是一对多关系,从订单的角度来看就是多对一的关系。

/** * 订单持久化类 */public class Orders { private Integer id; private String number; setter/getter方法}

/***用户持久化类*/public class User { private Integer id; private String username; private String address; private List ordersList;//用户关联的订单 setter/getter方法}

用户mapper接口

/** * 用户Mapper接口 */public interface UserMapper { //用户和订单为一对多关系,那么此时应该返回一个用户list里面包含了订单信息 List userOrdersinfo(int id);//通过用户id返回它的订单信息}

用户的mapper映射文件

               

用户业务层接口

/** * 用户业务层接口 */public interface UserWithOrdersInfo { List selectUserOrdersInfo(int id);}

用户业务层实现类

@Servicepublic class UserWithOrdersInfoImpl implements UserWithOrdersInfo { @Autowired private UserMapper userMapper; @Override public List selectUserOrdersInfo(int id) {  return userMapper.userOrdersinfo(id); }}

控制器类

@Controllerpublic class UserOrdersController { @Autowired private UserWithOrdersInfo userWithOrdersInfo; @RequestMapping("/userordersinfo/{id}") public String getUserOrdersInfo(@PathVariable int id, Model model){  model.addAttribute("userordersinfo",userWithOrdersInfo.selectUserOrdersInfo(id));  return "userordersinfo"; }}

页面

person信息页面

                       
用户id姓名用户地址订单id订单号
用户id用户姓名用户地址订单id订单号订单id订单号

运行结果

一对多关联关系总结:

一对多关系从不同的角度看,关系是不一样的,但是最终都是一样的,在编写mapper映射文件的时候使用的是元素。也是使用嵌套查询更加方便,需要解决的问题是如何在页面展示查询出来的一对多关联关系的结果。

到此,相信大家对“Mybatis一对多关联关系映射实现过程介绍”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!


分享标题:Mybatis一对多关联关系映射实现过程介绍
URL链接:http://hbruida.cn/article/jeddsp.html