java语言的使用之json在前端和后台之间的转换操作
小标 2018-08-06 来源 : 阅读 1162 评论 0

摘要:本文主要向大家介绍了java语言的使用之json在前端和后台之间的转换操作,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助。

本文主要向大家介绍了java语言的使用之json在前端和后台之间的转换操作,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助。

1.java 中使用json

1.1 导入jar包

如果想在后台java代码中使用json,首先就必须导入json.jar ,json。jar可以去官网上下载。

1.2 在java程序中导入类引用

首先将下载好的jar包复制进你的项目中的lib文件夹(一般在webContent-->WEB-INF下,没有就自己新建一个)下,根据不同的开发环境不同,可能有的开发环境只需要将jar包复制进去即可,有的复制进去以后还要选定这个jar包,然后右键,builder Path --> Add Builder Path;

然后在你想使用json对象的java程序中引入下面的类:

import org.json.JSONArray;

import org.json.JSONException;

import org.json.JSONObject;

   

1.3 使用json

通过上面的两个步骤,json就可以在java程序中使用了,使用方法如下:

1.3.1将json格式的string字符串转为json对象

如果想把字符串转化为json对象,首先就要求这个字符串是符合json格式的,json格式可以去网上学习一下,这里不细说,

下面就直接上例子:


String str = "{\"name\":\"caocao\",\"age\":\"32\"}";

        try {

            JSONObject jsonObj = new JSONObject(str);

            System.out.println(jsonObj.getString("name"));

        } catch (Exception e) {

            System.out.println(e.getMessage());

            e.printStackTrace();

        }

   

通过上面的一段代码,我们就可以将str字符串转为json对象,并且成功的打印除了转化后的json对象中的name属性的值,这个适合于简单的json数据。

1.3.2将对象转换为json对象

Map<string string=""> params =  new HashMap();

 

     params.put("name", "caocao");

     params.put("age", "30");

     //声明JSONArray对象并输入JSON字符串

     JSONArray array = JSONArray.fromObject(params);

     Systemout.println(array.toString());

</string>

   

通过上面的代码,就可以将一个对象转化为json数组,这个json数组可以用来在向前端传送数据。

1.3.3从json对象中获取json对象值

这个适合于比较复杂的json数据,比如如下代码

   

String jsonStr = "{\"name\": \"caocao\",\"age\": \"30\",\"identity\": {\"home\": \"father\",\"chief\": \"chief\"}, \"childrens\": [\"caopi\", \"caozhi\", \"caochong\"]}";

        JSONObject jsonObj = new JSONObject(jsonStr);

        JSONObject config = jsonObj.getJSONObject("identity");

   

这样就可以以json对象形式获取json中某个属性下值仍旧包含属性和值的情况,然后再接着进行其他操作。

1.3.4 从json对象中获取json数组


JSONArray childrens= jsonObj.getJSONArray("childrens");

        for (int index = 0, length = childrens.length(); index < length; index++) {

             Systemout.println(childrens[i]);

        }

   

1.3.5将json对象转为string字符串

   

//创建JSONObject对象

JSONObject json = new JSONObject();

 //向json中添加数据

json.put("name", "caocao");

json.put("age", 30);

json.put("height", 167);

//创建JSONArray数组,并将json添加到数组

JSONArray array = new JSONArray();

array.put(json);

//转换为字符串

String jsonStr = array.toString();

System.out.println(jsonStr);

   

1.3.6将集合转为json对象

public static void main(String[] args)throws JSONException{

        //初始化ArrayList集合并添加数据

        List<string> list = new ArrayList<string>();

        list.add("name");

        list.add("age");

        list.add("sex");

 

        //初始化HashMap集合并添加数组

        Map map = new HashMap();

        map.put("name", "caocao");

        map.put("age", 30);

 

        //初始化JSONArray对象,并添加数据

        JSONArray array = new JSONArray();

        array.put(list);

        array.put(map);

 

        //生成的JSON字符串为:[["name","age","sex"],{"name":69,"age":"30"}]

    }

</string></string>

   

2.在前端代码中使用json

在前端中使用json必须在页面中添加json.js文件,将此文件复制进webContent下合适(自己决定即可)的文件夹内,然后再网页文件里添加如下引用:

   

<script src="json/json2.js" type="text/javascript"></script>

   

注意:上面的src内的内容和你吧这个文件放入哪个文件夹有关,要把对应的这个json.js文件的路径写对才可以。

通过上面的步骤,就可以在页面js函数中使用json对象了。

   

//@description: 根据接收到的JSON字符串来解析字符串中所包含的数据和数据对象

 

//接收到的JSON字符串

var result = "[{\"name\": \"coacao\", \"identity\": {\"home\": \"father\", \"army": \"chief\"}}]";

var dataJson = eval("(" + result+ ")");

alert(dataJson.name);

//弹出的对话框为: caocao

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注编程语言JAVA频道!


本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 1 不喜欢 | 0
看完这篇文章有何感觉?已经有1人表态,100%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程