使用情况是从页面getset获取下拉框的value值 由于图方便 value值里放的是对象
<td>硬盘:<select name="type_hdd" id="HDD" class="comtt">
<s:iterator value="hdd" var="item">
<option value="${item }">${item.component_name }</option>
</s:iterator>
</select>
</td>
所以,获取到的是如下的实体类的字符串,但是字符串无法转换成bean,中间想过用java的-conversion.properties来转型,但是可能字符串过长,获取出错,所以用类来转化
String s="component [component_id=1, component_name=无敌X, capacity=, price=1200]";
public component stringtobean(String str) {
String c=str.substring(str.indexOf("["), str.lastIndexOf("]")+1);
c=c.replace("[", "{\"");
c=c.replace("]", "\"}");
c=c.replace("=", "\":\"");
c=c.replace(",", "\",\"");
JSONObject jsonObject=JSONObject.fromObject(c);
component strbean=(component)JSONObject.toBean(jsonObject, component.class);
return strbean;
}
通过字符串截取,转换成json字符串
然后通过json字符串的方法完成转化
需要的jar包关于json的commons-beanutils-1.8.0.jar;commons-collections-3.2.1.jar;commons-lang-2.5.jar;commons-logging-1.1.1.jar;ezmorph-1.0.6.jar;json-lib-2.3.jar;struts2-json-plugin-2.3.32.jar;json-lib-2.4-jdk15.jar;