【Mybatis】pojo类中有实体类属性,insert报错

pojo类中有实体类属性,insert报错


参考

  • pojo类

    public class Dialoges implements Serializable {
        int id;
        String orderType;
        int orderId;
        User fromUser;
        User toUser;
        String mes;
        private Date sendTime;
        private boolean status;
    }
    
  • DialogesMapper.java中 新增对话方法

    int addOneDialoge(Dialoges dialoges);
    
  • DialogesMapper.xml中对应sql

    <insert id="addOneDialoge" parameterType="dialoges">
            insert into CampusComprehensiveService.dialoges (order_type,order_id,from_id,to_id,mes,send_time,status)
            values (#{orderType},#{orderId},#{fromUser.id},#{toUser.id},#{mes},#{sendTime},#{status});
    </insert>
    
  • 实体类只要对象.属性即可

    不能直接写#{fromUser},无法映射;要写#{fromUser.id}



另外

为什么要继承Serializable(序列化)

参考

如果实体类里都是基本数据类型就没必要加。如果有复杂的数据类型可能会报错,需要加上。

报错:java.io.NotSerializableException: com.musecho.pojo.User

posted @ 2021-04-08 17:26  musecho  阅读(252)  评论(0编辑  收藏  举报