java后台的json值怎么传给jsp页面,并进行遍历

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java后台的json值怎么传给jsp页面,并进行遍历相关的知识,希望对你有一定的参考价值。

首先看你的后台是用的什么。
1、servlet,把json放在request(session)对象里,然后返回,jsp在request里取。
2、框架,放在form表单里带回去,jsp页面用标签直接调用。

遍历的方式很多,《% %》的方式 或者《C:BEAN》等方式都可以

满意请采纳。追问

我后台是struts2 我就是想能不能直接用struts2直接遍历,不用js

追答

可以 直接把json对象放到form里就可以。

参考技术A 请求时后台代码(对json进行赋值)
JSONObject json = new JSONObject(); //json对象
JSONArray array = new JSONArray();//json数组
JSONObject jsonarticlecomment = null; //数组中需要放的对象
.....(这里我省略了用querycomment这个数组的获得过程)
Iterator iter = querycomment.iterate();-------iter是你需要遍历的对象组,这里从数据库取出来的
while (iter.hasNext())
jsonarticlecomment = new JSONObject();
jsonarticlecomment.put("id", "1"); //分别对这个数组中的对象进行赋值
array.add(jsonarticlecomment); //添加到jsonarray中

json.put("objarray", array); //把json数组保存到json对象中
PrintWriter pw = response.getWriter();
pw.print(json.toString()); //把json对象字符串化
pw.close();

取json中的数据(jquery请求)
var uri = "/comment/article.do?method=selArticlecomment";
var parameter = articlesrc:articlesrc,pages:pages; (参数)
var type = "json";
$.post(uri,parameter,function(data,textStatus)
var objarray= data.objarray; //返回的数据数组
for(var i = 0;i<objarray.length;i++)
alert(obj[i].id); //这个就是你存在对象数组中的的对象的字段值啦



,type);追问

但是我想用struts2标签取值 可以做到吗

追答

那就把json对象传不以字符串形式返回,直接放到session中或者request返回也可以啊!

参考技术B 通过 JSONObject类就可以了
首先 你把这几个包 下下来 放到你项目。如果有就不要下了:

1.commons-lang.jar
2.commons-beanutils.jar
3.commons-collections.jar
4.commons-logging.jar
5.ezmorph.jar
6.json-lib-2.2.2-jdk15.jar
像你这种是数据形式 就通过 JSONArray 如:
JSONArray datasJson = JSONArray.fromObject(datas);最好把datas toString 一下
参考技术C json
是一个特殊的集合对象,后台new出一个json对象,赋值,把这个对象送给前台,前台解析就可以了
参考技术D var arr = eval('('+jsol+')')//arr是个数组。这样你就可以for循环就进行遍历了

以上是关于java后台的json值怎么传给jsp页面,并进行遍历的主要内容,如果未能解决你的问题,请参考以下文章

java后台转发jsp地址到到前端页面的时候,前端页面效果未加载是怎么回事?

如何把后台的复选框值传给jsp页面?

java中前台怎么把数据传给后台

java运行结果是一个list,打印在控制台上,怎么把它显示在一个jsp页面

(java)jsp页面ajax发出请求返回json格式数据 中文乱码问题

java后台配置信息如何传递到前端jsp页面