Mybatis没有财产的吸气剂

时间:2015-11-16 09:56:45

标签: java foreach mybatis

我正在使用Mybatis来批量插入数据,特别是我的parameterType是一个具有List属性的类,所以我使用foreach来进行遍历。但是它没有工作,这里是调试和代码。谢谢。 DEBUG

这是sql:

<insert id="batchInsertSn" parameterType="domain.collectSn.IbSnTransit">
    insert into
    ib_sn_transit (
    sn, inbound_no, container_no,
    goods_no,goods_name, owner_no,
    owner_name,create_user,update_user,
    create_time,update_time,yn,
    org_no,org_name,distribute_no,
    warehouse_no,receiving_no,supplier_no
    ,out_wave_no)
    values
    <foreach collection="snList" item="item" index="index" separator="," >
    (
    #{item.sn,jdbcType=VARCHAR},  #{inboundNo,jdbcType=VARCHAR},  #{containerNo,jdbcType=VARCHAR},
    #{goodsNo,jdbcType=VARCHAR},#{goodsName,jdbcType=VARCHAR},#{ownerNo,jdbcType=VARCHAR},
    #{ownerName,jdbcType=VARCHAR}, #{createUser,jdbcType=VARCHAR}, #{updateUser,jdbcType=VARCHAR},
    now(),now(),#{yn,jdbcType=TINYINT},
    #{orgNo,jdbcType=VARCHAR},#{orgName,jdbcType=VARCHAR},#{distributeNo,jdbcType=VARCHAR},
    #{warehouseNo,jdbcType=VARCHAR},#{receivingNo,jdbcType=VARCHAR},#{supplierNo,jdbcType=VARCHAR}
    ,#{outWaveNo,jdbcType=VARCHAR}
    )
    </foreach>
</insert>

这是班级

public class IbSnTransit {
    private String outWaveNo;
    private String queryUser;
    private String finishFlag;
    private Integer id;
    private String inboundNo;
    private String sn;
    private String snStart;
    private String snEnd;
    private String containerNo;
    private String goodsNo;
    private String goodsName;
    private String ownerNo;
    private String ownerName;
    private String createUser;
    private Date createTime;
    private String updateUser;
    private Date updateTime;
    private Integer yn;
    private String orgNo;
    private String orgName;
    private String distributeNo;
    private String warehouseNo;
    private String receivingNo;
    private String supplierNo;
    private List<String> snList;

    public String getSupplierNo() {
        return supplierNo;
    }

    public void setSupplierNo(String supplierNo) {
        this.supplierNo = supplierNo;
    }

    public Integer getId() {
        return id;
    }
    public void setId(Integer id){
        this.id = id;
    }

    public String getOwnerName() {
        return ownerName;
    }

    public void setOwnerName(String ownerName) {
        this.ownerName = ownerName;
    }

    public String getOrgName() {
        return orgName;
    }

    public void setOrgName(String orgName) {
        this.orgName = orgName;
    }

    public String getSn() {
        return sn;
    }
    public void setSn(String sn){
        this.sn = sn;
    }

    public String getInboundNo() {
        return inboundNo;
    }

    public void setInboundNo(String inboundNo) {
        this.inboundNo = inboundNo;
    }

    public String getGoodsNo() {
        return goodsNo;
    }

    public void setGoodsNo(String goodsNo) {
        this.goodsNo = goodsNo;
    }

    public String getGoodsName() {
        return goodsName;
    }

    public void setGoodsName(String goodsName) {
        this.goodsName = goodsName;
    }

    public String getContainerNo() {
        return containerNo;
    }

    public void setContainerNo(String containerNo) {
        this.containerNo = containerNo;
    }

    public String getOwnerNo() {
        return ownerNo;
    }

    public void setOwnerNo(String ownerNo) {
        this.ownerNo = ownerNo;
    }

    public String getCreateUser() {
        return createUser;
    }

    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getUpdateUser() {
        return updateUser;
    }

    public void setUpdateUser(String updateUser) {
        this.updateUser = updateUser;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public Integer getYn() {
        return yn;
    }

    public void setYn(Integer yn) {
        this.yn = yn;
    }

    public String getDistributeNo() {
        return distributeNo;
    }

    public void setDistributeNo(String distributeNo) {
        this.distributeNo = distributeNo;
    }

    public String getOrgNo() {
        return orgNo;
    }

    public void setOrgNo(String orgNo) {
        this.orgNo = orgNo;
    }

    public String getWarehouseNo() {
        return warehouseNo;
    }

    public void setWarehouseNo(String warehouseNo) {
        this.warehouseNo = warehouseNo;
    }

    public String getSnStart() {
        return snStart;
    }

    public void setSnStart(String snStart) {
        this.snStart = snStart;
    }

    public String getSnEnd() {
        return snEnd;
    }

    public void setSnEnd(String snEnd) {
        this.snEnd = snEnd;
    }

    public String getReceivingNo() {
        return receivingNo;
    }

    public void setReceivingNo(String receivingNo) {
        this.receivingNo = receivingNo;
    }

    public String getFinishFlag() {
        return finishFlag;
    }

    public void setFinishFlag(String finishFlag) {
        this.finishFlag = finishFlag;
    }    

    public String getQueryUser() {
        return queryUser;
    }

    public void setQueryUser(String queryUser) {
        this.queryUser = queryUser;
    }

    public String getOutWaveNo() {
        return outWaveNo;
    }

    public void setOutWaveNo(String outWaveNo) {
        this.outWaveNo = outWaveNo;
    }

    public List<String> getSnList() {
        return snList;
    }

    public void setSnList(List<String> snList) {
        this.snList = snList;
    }    
}

结果

org.mybatis.spring.MyBatisSystemException:嵌套异常是org.apache.ibatis.reflection.ReflectionException:没有名为&#39;&#39;的属性的getter。在&#39;类java.lang.String&#39;

1 个答案:

答案 0 :(得分:0)

IbSnTransit.snList被声明为String.class对象的List,因此,当您在mapper中使用#{item.sn,jdbcType = VARCHAR}时,会要求String.class中的属性sn。也许您必须使用#{item,jdbcType = VARCHAR}。