日期:2014-05-19  浏览次数:20828 次

表单数据如何封装 set类型数据(hibernate struts)
实体类代码 winebaseinfo(酒基本信息)代码
Java code

private Integer winebasicinfoid;
private BottleSize bottleSize;
private Set manufacturers = new HashSet(0);

public Integer getWinebasicinfoid() {
        return this.winebasicinfoid;
    }

    public void setWinebasicinfoid(Integer winebasicinfoid) {
        this.winebasicinfoid = winebasicinfoid;
    }

    public BottleSize getBottleSize() {
        return this.bottleSize;
    }

    public void setBottleSize(BottleSize bottleSize) {
        this.bottleSize = bottleSize;
    }

    public Set getManufacturers() {
        return this.manufacturers;
    }

    public void setManufacturers(Set manufacturers) {
        this.manufacturers = manufacturers;
    }





实体类 BottleSize (酒瓶规格代码) 
Java code

private Integer bottleid;
private Short bottlesize;
public Integer getBottleid() {
        return this.bottleid;
    }

    public void setBottleid(Integer bottleid) {
        this.bottleid = bottleid;
    }

    public Short getBottlesize() {
        return this.bottlesize;
    }

    public void setBottlesize(Short bottlesize) {
        this.bottlesize = bottlesize;
    }



其中 bottlesize 和 winebasicinfo 是一对多的关系 manufacturers 和 winebasicinfo是多对多关系
在jsp 页面中 酒瓶规格的name=“winebaseinfo.bottlesize.bottlesizeid” 可以直接将酒瓶的数据插入 数据库
而manufacturer 用的是checkbox 它的name 属性怎么写使其可以像 bottlesizeid一样直接插入数据库
我试了 name=“winebaseinfo.manufacturer”它直接将 manufacturer封装成了 一个set<String> 但我要的是set<manufacturer>类型 用name=“winebaseinfo.manufacturer.manufacturerid” 直接找不到

------解决方案--------------------
首先你一个checkbox传到后台,他默认肯定是String啊

其次因为你要前台直接封装到Set集合,可能我的个人的能力问题,我是从来没像你这么做过,刚才我还特地试了下,没行。

最后你想实现你的这个效果,可以通过先传对象,然后进行设置进去

------解决方案--------------------
探讨

首先你一个checkbox传到后台,他默认肯定是String啊

其次因为你要前台直接封装到Set集合,可能我的个人的能力问题,我是从来没像你这么做过,刚才我还特地试了下,没行。

最后你想实现你的这个效果,可以通过先传对象,然后进行设置进去