mp配合mybatis注解实现多表查询
作者:互联网
接上篇
实体类
@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