在线
客服

发布
需求

在线
聊天

天盟
APP

天盟APP下载

关注
微信

微信扫一扫访问
顶部

mybatis 多对多 在collection中使用select查询报错。。求解

website类
public class Website {    private Integer id;    private String name;    private String websiteAddress;    private List categoryList;    private List scoreList;    public Website() {        super();    }    public Integer getId() {        return id;    }    public void setId(Integer id) {        this.id = id;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name == null ? null : name.trim();    }    public String getWebsiteAddress() {        return websiteAddress;    }    public void setWebsiteAddress(String websiteAddress) {        this.websiteAddress = websiteAddress == null ? null : websiteAddress.trim();    }    public List getCategoryList() {        return categoryList;    }    public void setCategoryList(List categoryList) {        this.categoryList = categoryList;    }    public List getScoreList() {        return scoreList;    }    public void setScoreList(List scoreList) {        this.scoreList = scoreList;    }}category类
public class Category {    private Integer id;    private String name;    private Integer parentCategoryId;    private List userList;    private List websiteList;        public Integer getId() {        return id;    }    public Category() {        super();    }    public void setId(Integer id) {        this.id = id;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name == null ? null : name.trim();    }    public Integer getParentCategoryId() {        return parentCategoryId;    }    public void setParentCategoryId(Integer parentCategoryId) {        this.parentCategoryId = parentCategoryId;    }    public List getUserList() {        return userList;    }    public void setUserList(List userList) {        this.userList = userList;    }    public List getWebsiteList() {        return websiteList;    }    public void setWebsiteList(List websiteList) {        this.websiteList = websiteList;    }}中间类

public class WebsiteToCategory {    private Integer websiteId;    private Integer categoryId;    public WebsiteToCategory() {        super();    }        public Integer getWebsiteId() {        return websiteId;    }    public void setWebsiteId(Integer websiteId) {        this.websiteId = websiteId;    }    public Integer getCategoryId() {        return categoryId;    }    public void setCategoryId(Integer categoryId) {        this.categoryId = categoryId;    }}websitemapper:
                               select *  from website  where id = #{id,jdbcType=INTEGER}categorymapper:
                        select *    from category    where id = #{id,jdbcType=INTEGER}  中间类mapper:
        SELECT c.* FROM category c,website_to_category wc WHERE c.id=wc.category_id and wc.website_id=#{website_id}        SELECT w.* FROM website w,website_to_category wc WHERE w.id=wc.website_id and wc.category_id=#{category_id}

直接执行中间类的两个方法是都可以查询出来的,但放在collection中子查询就不行


开始我在websitemapper中的resultmap中的collenction的column写的市sebsite_id,查询出来的对象list是空的
又改成column="{website_id=id}"想让他强制执行,结果就一直报错

Error instantiating class java.lang.Integer with invalid types () or values (). Cause: java.lang.NoSuchMethodException: java.lang.Integer.()

免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。

版权声明:作者保留权利,不代表天盟立场。

使用道具 举报

全部参与1

parameterType 要写成java.lang.Integer

使用道具 举报

发新帖
国内首家创新型IT技术需求众包服务平台,软件需求就上天盟网! 立即登录 立即注册