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

request.setAttribute("param", param)的疑问
request.setAttribute("param", param),在action中这个param的类型可以任何类型吗,bean,json,array,list,页面上都能用${"param"};接受到吗,我试了下好像不行啊,但是我看很多项目里面都是这样传的,请问我是不是哪里出了问题 
------最佳解决方案--------------------
JSON格式类似Map,要用key取值。
------其他解决方案--------------------
param的参数是object的类型。
正常来说只要格式正确,在前台页面都可以获取!
------其他解决方案--------------------
我试了JSON格式不行 
------其他解决方案--------------------
不是这样${"param"}应该是这样${param};

在不行就看看你的页面中有没有对EL表达式禁用
<%@ page isELIgnored ="true" %>禁用EL表达式代码
------其他解决方案--------------------
JSON类型?楼主说的JSON类型是什么意思?JDK里面可没有这个类型哦,是三方库里面的JSON类型还是一个简单的JSON字符串,如果是三方库里面的JSON对象,看是否重写了toString方法返回json串
------其他解决方案--------------------
${param}这种应该只对简单类型有用吧,复杂的类型应该要用循环或者是属性,或者如楼上说的键值对的形式来吧。而且如果你用json这样就没太大的意思了,因为json一般都是js里面的标准,所以一般用于ajax请求,这个js回去解析。
------其他解决方案--------------------
json 类型你传到controller 之后 可以给他进行反序列化为对象,然后将对象存request中,再用el表达试就可以直接访问了
------其他解决方案--------------------
引用:
${param}这种应该只对简单类型有用吧,复杂的类型应该要用循环或者是属性,或者如楼上说的键值对的形式来吧。而且如果你用json这样就没太大的意思了,因为json一般都是js里面的标准,所以一般用于ajax请求,这个js回去解析。


如果lz不了解json建议先看下json是具体什么内容。

一般int String list 都可以的。
------其他解决方案--------------------
JSON 是 JS,别跟 JAVA 混在一起,
别把 JSP 中 EL 表达式跟 JS 中 jQuery 的美元符号混在一起。
虽说新手经常会有这样的问题,但看到太多的人都这样就特别火大,jQuery 这东西毒害了多少 JAVA 新手。