@Select(" SELECT * FROM buy_car WHERE user_id=#{user_id}")
@Results({
@Result(column = "pro_Id",property = "productInfo",
one=@One(select = "com.order.dao.ProductMapper.ProInfoByCar"))})
public ArrayList CarInfoByUser(@Param("user_id")int user_id);
实现根据用户查找购物车的同时查出购物车里面商品的信息,运行无问题,购物车类里面的商品信息类里面可以拿到的,反而购物类本身的字段无法自动映射过去,需要手动在上面继续写result
ArrayList<BuyCar> list=productService.CarInfoByUser(user.getUserId()) ;
for (BuyCar buyCar : list) {
System.out.println(buyCar.getBuy_time());//为空,无法映射,但是sql语句查询出来了
System.out.println(buyCar.getProductInfo().getPro_Name());//有拿到
System.out.println(buyCar.getProductInfo().getPro_logo());
}
购物车类
public class BuyCar {
private Integer user_id;//拿不到
private Integer pro_id;//拿不到
private Integer buy_count;//拿不到
private Date buy_time;//拿不到
private ProductInfo productInfo;//自动映射到了
省略getset方法