jsp中的hashmap输入
有人能告诉我如何在jsp中设置hashmap值吗 对象是 配备:jsp中的hashmap输入,jsp,spring-mvc,Jsp,Spring Mvc,有人能告诉我如何在jsp中设置hashmap值吗 对象是 配备: private Map<String, Float> myHashMap = new HashMap<String, Float>(); private Map myHashMap=new HashMap(); 在jsp中,我希望这样做 <input type='hidden' name='myobject.myHashmap["setvalue string"]' value='my value
private Map<String, Float> myHashMap = new HashMap<String, Float>();
private Map myHashMap=new HashMap();
在jsp中,我希望这样做
<input type='hidden' name='myobject.myHashmap["setvalue string"]' value='my value for string' />
<input type='hidden' name='myobject.myHashmap["setvalue float"]' value='my value for float' />
结合使用bean和jsp标记是可行的,但要小心——你做得不对,你想要的是错的(可能不是你需要的)。我的解决方案很有效,但我认为你应该扔掉它,无论如何都要改变你的应用程序(除非这是不可能的,或者时间压力很大)
//映射器
package a.b.c;
import java.util.Map;
public class MapAppender {
private String key;
private Float value;
public void setKey(String key) {
this.key = key;
}
public void setValue(Float value) {
this.value = value;
}
public void setMap(Map map) {
if (key != null && value != null) map.put(key, value);
}
}
// How to use it on page:
<jsp:useBean id="object" scope="session" class="a.b.c.ObjectWithMap" />
<jsp:useBean id="appender" scope="request" class="a.b.c.MapAppender" />
<jsp:setProperty name='appender' property='key' value='${param.string}' />
<jsp:setProperty name='appender' property='value' value='${param.float}' />
<jsp:setProperty name='appender' property='map' value='${object.map}' />
<form>
<input name='string' value='test' />
<input name='float' value='3.25' />
<input type="submit" />
</form>
a.b.c包;
导入java.util.Map;
公共类映射器{
私钥;
私人浮动价值;
公共无效设置键(字符串键){
this.key=key;
}
公共无效设置值(浮动值){
这个值=值;
}
公共无效集合映射(映射映射){
if(key!=null&&value!=null)map.put(key,value);
}
}
//如何在第页使用它: