
你用的是responsesendRedirect执行的跳转(不是foward),那么如果你这个indexjsp和你的java文件在一个project项目里的(术语叫同一个域内)。
1用session来存储java里的json,无论是json object还是String格式的json 用setAttribute方法放到Session里面,然偶跳转到index,jsp
2在jsp里同样用sessiongetattribute获得这个json数据,放到表单的某个位置,比如说放到文本框内,作为文本框的value
3jsp里面的js代码,getElementById或者这个文本框的value,然后alert出来
java解析json字符串时将大括号中的对应为一个类,里面的数据对应为类的属性,最后用数组接受即可。
示例关键代码如下:
//导入 netsfjsonJSONArray和netsfjsonJSONObject 两个jar 包String str = "[{name:'a',value:'aa'},{name:'b',value:'bb'},{name:'c',value:'cc'},{name:'d',value:'dd'}]" ; // 一个未转化的字符串
JSONArray json = JSONArrayfromObject(str ); // 首先把字符串转成 JSONArray 对象
if(jsonsize()>0){
for(int i=0;i<jsonsize();i++){
JSONObject job = jsongetJSONObject(i); // 遍历 jsonarray 数组,把每一个对象转成 json 对象
Systemoutprintln(jobget("name")+"=") ; // 得到 每个对象中的属性值
}
}
首先你的这个json串就有问题,修改下才能解析,解析方法如下
JSONObject log=jsonObjectgetJSONObject("第一级Object");
JSONArray jsonArray = loggetJSONArray("Object中的array");
JSONObject pages = jsonArraygetJSONObject(0); //从jsonArray中解析第一个Object
JSONObject pageTimings=pagesgetJSONObject("继续解析object");
String onContentLoad=pageTimingsgetString("onContentLoad"); //得到想要的值
把{}大括号扩起来的看成是object,如果有名字就根据名字来解析,如果没名字就根据序号来解析,上面的代码两种情况均有涉及,请注意参考与更改变量名。[]扩起来的看成数组,用getArray解析,同样可以用名字或序号解析
我们需要先把json字符串转化为netsfjsonJSONObject对象,java中这样就可以完成json字符串到Map的转换了。
1将数组转换为JSON:String[] arr = {"asd","dfgd","asd","234"};JSONArray jsonarray = JSONArrayfromObject(arr);Systemoutprintln(jsonarray);
2对象转换成JSON:UserInfo user = new UserInfo(1001,"张三");JSONArray jsonArray = JSONArrayfromObject(user);Systemoutprintln( jsonArray );
3把Map转换成json, 要使用jsonObject对象:Map<String, Object> map = new HashMap<String, Object>();mapput("userId", 1001);mapput("userName", "张三");mapput("userSex", "男");JSONObject jsonObject = JSONObjectfromObject(map);Systemoutprintln(jsonObject);
4把List转换成JSON数据:List<UserInfo> list = new ArrayList<UserInfo>();UserInfo user = new UserInfo(1001, "张三");listadd(user);listadd(user);listadd(user);JSONArray jsonArray = JSONArrayfromObject(list);Systemoutprintln(jsonArray);
5
java中把json怎么转换成数组的方法:
1、使用原生的解析:
String json = "";
JSONArray array= new JSONArray(json);
//遍历数组里的值,得到每个独立的对象,然后获取对应的值设置到声明好的对象中,最终创建对象完成后添加到集合中,如我自己代码里的片段:
for (int j = 0; j < arraylength(); j++) {
obj = arraygetJSONObject(j);
Data data = new Data();
datasetThumbnail(objgetString("thumbnail"));
datasetTitle(objgetString("title"));
datasetUrl(objgetString("url"));
mDataListadd(data);
}
2、使用第三方包如Gson,但是这个你得保证你的JSON字符串个z
java
Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
以上就是关于请问下java中封装了json数据,在js中如何获取json数据来页面展示全部的内容,包括:请问下java中封装了json数据,在js中如何获取json数据来页面展示、java解析json字符串 放到数组中、java json取集合某个元素等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)