ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

mp配合mybatis注解实现多表查询

2022-05-06 21:34:03  阅读:286  来源: 互联网

标签:departid 多表 int private record mp mybatis Depart id


接上篇

 

实体类

@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("tbl_user")
public class User implements Serializable {
    @TableId
    private Long id;

    private String username;

    private String address;

    private Integer departid;

    @TableField(exist = false)
    private Depart depart;

    private static final long serialVersionUID = 1L;
}
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("tbl_depart")
public class Depart implements Serializable {

    @TableId
    private Long departid;

    private String departname;

    private String departloc;

    private String departdesc;

    private static final long serialVersionUID = 1L;
}

 

写UserDao

public interface UserDao extends BaseMapper<User> {
//    int deleteByPrimaryKey(Integer id);
//
//    @Insert(" insert into tbl_user (username, address, departId ) values (#{username,jdbcType=VARCHAR}, #{address,jdbcType=VARCHAR}, #{departid,jdbcType=INTEGER})" )
//    int insert(User record);
//
//    int insertSelective(User record);
//
    @Select("select * from tbl_user inner join tbl_depart using(departId) where id =#{value}")
    @Results({
            @Result(property = "depart", javaType = Depart.class, column = "departid", one = @One(select = "cn.taotao.dao.DepartDao.selectByPrimaryKey"))
            , @Result(property = "departid", column = "departid")})
    User selectByPrimaryKey(Integer id);
//
//    int updateByPrimaryKeySelective(User record);
//
//    int updateByPrimaryKey(User record);
}

写DepartDao

public interface DepartDao extends BaseMapper<Depart> {
//    int deleteByPrimaryKey(Integer departid);
//
//    int insert(Depart record);
//
//    int insertSelective(Depart record);
//
    @Select("select * from tbl_depart where departid=#{value}")
    Depart selectByPrimaryKey(Integer departid);
//
//    int updateByPrimaryKeySelective(Depart record);
//
//    int updateByPrimaryKey(Depart record);
}

写UserServiceImpl

   @Override
    public User selectByPrimaryKey(Integer id) {
        return this.userDao.selectByPrimaryKey(id);
    }

写UserController控制层

 @Autowired
    private UserService userService;

    @RequestMapping("/{id}")
    @ResponseBody
    public User getone(@PathVariable("id") Integer id){

        return this.userService.selectByPrimaryKey(id);
     //  return this.userService.getById(id);  这个是用原生的mp
    }

 

标签:departid,多表,int,private,record,mp,mybatis,Depart,id
来源: https://www.cnblogs.com/sdgtxuyong/p/16230513.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有