使用MyBatis遇到的問題及解決方法(一)(持續更新)

這是一個出錯的代碼java

1 public interface OrderInfoManageMapper {
2     List<GetOrderInfoManageListReq> selectAllOrder();
3     void modifyDelivery(int id);
4     void removeOrder(int id);
5     List<GetOrderInfoManageListReq> selectOrderById(@Param("id") Integer id);
6 }

 

1、報錯:app

1  There is no getter for property named 'id' in 'class java.lang.Integer'

檢查mapper.xml文件,沒錯,以下:spa

 1 <select id="selectOrderById" parameterType="java.lang.Integer" resultMap="BaseResultMap">
 2         SELECT DISTINCT
 3         order_info.id,
 4         user_info.user_name,
 5         order_info.order_status,
 6         order_info.pay_type,
 7         order_info.total_price,
 8         ship_address.ship_user_name,
 9         ship_address.ship_user_mobile,
10         ship_address.ship_address,
11         order_goods.goods_desc,
12         order_goods.goods_sku,
13         order_goods.goods_icon,
14         order_goods.goods_price
15         FROM
16         order_info,
17         user_info,
18         ship_address,
19         order_goods
20         WHERE
21         order_info.id = order_goods.order_id
22         AND order_info.user_id = user_info.id
23         AND order_info.ship_id = ship_address.id
24         <if test="id!= null and id!= '' ">
25             AND order_info.id = #{id}
26         </if>
27     </select>

檢查mapper接口,以下:code

1 public interface OrderInfoManageMapper {
2     List<GetOrderInfoManageListReq> selectAllOrder();
3     void modifyDelivery(int id);
4     void removeOrder(int id);
5     List<GetOrderInfoManageListReq> selectOrderById(Integer id);
6 }

看似沒有問題,可是id的話,須要這麼寫(看最後一行):xml

 

1 public interface OrderInfoManageMapper {
2     List<GetOrderInfoManageListReq> selectAllOrder();
3     void modifyDelivery(int id);
4     void removeOrder(int id);
5     List<GetOrderInfoManageListReq> selectOrderById(@Param("id") Integer id);
6 }
相關文章
相關標籤/搜索