网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
JSONObject();创建一个空的JSONObject对象
JSONObject(boolean isNull);创建一个是否为空的JSONObject对象
普通方法如下:
fromBean(Object bean);静态方法,通过一个pojo对象创建一个JSONObject对象
fromJSONObject(JSONObject object);静态方法,通过另外一个JSONObject对象构造一个JSONObject对象
fromJSONString(JSONString string);静态方法,通过一个JSONString创建一个JSONObject对象
toString();把JSONObject对象转换为json格式的字符串
iterator();返回一个Iterator对象来遍历元素
接下来就是一些put/get方法,需要普通的get方法和pot方法做一下强调说明,API中是这样描述的:
A get method returns a value if one can be found, and throws an exception if one cannot be found. An opt method returns a default value instead of throwing an exception, and so is useful for obtaining optional values.
JSONArray:A JSONArray is an ordered sequence of values.
是一个final类,继承了Object,实现了JSON接口
构造方法如下:
JSONArray();构造一个空的JSONArray对象
普通方法如下:
fromArray(Object[] array);静态方法,通过一个java数组创建一个JSONArray对象
fromCollection(Collection collection);静态方法,通过collection集合对象创建一个JSONArray对象
fromString(String string);静态方法,通过一个json格式的字符串构造一个JSONArray对象
toString();把JSONArray对象转换为json格式的字符串
iterator();返回一个Iterator对象来遍历元素
接下来同样是put/get方法……
XMLSerializer:Utility class for transforming JSON to XML an back.
一个继承自Object的类
构造方法如下:
XMLSerializer();创建一个XMLSerializer对象
普通方法如下:
setRootName(String rootName);设置转换的xml的根元素名称
setTypeHintsEnabled(boolean typeHintsEnabled);设置每个元素是否显示type属性
write(JSON json);把json对象转换为xml,默认的字符编码是UTF-8,
需要设置编码可以用write(JSON json, String encoding)
5.对XML和JSON字符串各列一个简单的例子
JSON:
{"password":"123456","username":"张三"}
xml
<?xml version="1.0" encoding="UTF-8"?>
<user_info>
<password>123456</password>
<username>张三</username>
</user_info>
start
新建web工程,工程名称JS,导入以下7个jar包,文件在前面的准备工作中下载路径。
说明:可以不用新建web工程,普通的java工程也可以完成本篇的的操作。至于为什么要导入处json包以外的其他6个包,我会把note.txt贴在最后,各位一看便知。
question1:后台接受到前台的json格式的字符串怎么处理?
public static void jsonToJAVA() {
System.out.println("json字符串转java代码");
String jsonStr = "{\"password\":\"\",\"username\":\"张三\"}";
JSONObject jsonObj = JSONObject.fromString(jsonStr);
String username = jsonObj.getString("username");
String password = jsonObj.optString("password");
System.out.println("json--->java\n username=" + username
+ "\t password=" + password);
}
question2:后台是怎么拼装json格式的字符串?
public static void javaToJSON() {
System.out.println("java代码封装为json字符串");
JSONObject jsonObj = new JSONObject();
jsonObj.put("username", "张三");
jsonObj.put("password", "");
System.out.println("java--->json \n" + jsonObj.toString());
}
question3:json格式的字符串怎么转换为xml格式的字符串?
public static void jsonToXML() {
System.out.println("json字符串转xml字符串");
String jsonStr = "{\"password\":\"\",\"username\":\"张三\"}";
JSONObject json = JSONObject.fromString(jsonStr);
XMLSerializer xmlSerializer = new XMLSerializer();
xmlSerializer.setRootName("user_info");
xmlSerializer.setTypeHintsEnabled(false);
String xml = xmlSerializer.write(json);
System.out.println("json--->xml \n" + xml);
}
question4:xml格式的字符串怎么转换为json格式的字符串?
public static void xmlToJSON(){
System.out.println("xml字符串转json字符串");
String xml = "<?xml version=\".\" encoding=\"UTF-\"?><user_info><password></password><username>张三</username></user_info>";
JSON json=XMLSerializer.read(xml);
System.out.println("xml--->json \n"+json.toString());
}
question5:javabean怎么转换为json字符串?
public static void javaBeanToJSON() {
System.out.println("javabean转json字符串");
UserInfo userInfo = new UserInfo();
userInfo.setUsername("张三");
userInfo.setPassword("");
JSONObject json = JSONObject.fromBean(userInfo);
System.out.println("javabean--->json \n" + json.toString());
}
question6:javabean怎么转换为xml字符串?
public static void javaBeanToXML() {
System.out.println("javabean转xml字符串");
UserInfo userInfo = new UserInfo();
userInfo.setUsername("张三");
userInfo.setPassword("");
JSONObject json = JSONObject.fromBean(userInfo);
XMLSerializer xmlSerializer = new XMLSerializer();
String xml = xmlSerializer.write(json, "UTF-");
System.out.println("javabean--->xml \n" + xml);
}
完整的JSONObject_1_3.java代码如下:
JSONObject_1_3
package json;
import net.sf.json.JSON;
import net.sf.json.JSONObject;
import net.sf.json.xml.XMLSerializer;
public class JSONObject__ {
public static void javaToJSON() {
System.out.println("java代码封装为json字符串");
JSONObject jsonObj = new JSONObject();
jsonObj.put("username", "张三");
jsonObj.put("password", "");
System.out.println("java--->json \n" + jsonObj.toString());
}
public static void jsonToJAVA() {
System.out.println("json字符串转java代码");
String jsonStr = "{\"password\":\"\",\"username\":\"张三\"}";
JSONObject jsonObj = JSONObject.fromString(jsonStr);
String username = jsonObj.getString("username");
String password = jsonObj.optString("password");
System.out.println("json--->java\n username=" + username
+ "\t password=" + password);
}
public static void jsonToXML() {
System.out.println("json字符串转xml字符串");
String jsonStr = "{\"password\":\"\",\"username\":\"张三\"}";
JSONObject json = JSONObject.fromString(jsonStr);
XMLSerializer xmlSerializer = new XMLSerializer();
xmlSerializer.setRootName("user_info");
xmlSerializer.setTypeHintsEnabled(false);
String xml = xmlSerializer.write(json);
System.out.println("json--->xml \n" + xml);
}
public static void javaBeanToJSON() {
System.out.println("javabean转json字符串");
UserInfo userInfo = new UserInfo();
userInfo.setUsername("张三");
userInfo.setPassword("");
JSONObject json = JSONObject.fromBean(userInfo);
System.out.println("javabean--->json \n" + json.toString());
}
public static void javaBeanToXML() {
System.out.println("javabean转xml字符串");
UserInfo userInfo = new UserInfo();
userInfo.setUsername("张三");
userInfo.setPassword("");
JSONObject json = JSONObject.fromBean(userInfo);
XMLSerializer xmlSerializer = new XMLSerializer();
String xml = xmlSerializer.write(json, "UTF-");
System.out.println("javabean--->xml \n" + xml);
}
public static void xmlToJSON(){
System.out.println("xml字符串转json字符串");
String xml = "<?xml version=\".\" encoding=\"UTF-\"?><user_info><password></password><username>张三</username></user_info>";
JSON json=XMLSerializer.read(xml);
System.out.println("xml--->json \n"+json.toString());
}
public static void main(String args[]) {
// javaToJSON();
// jsonToJAVA();
// jsonToXML();
// javaBeanToJSON();
// javaBeanToXML();
xmlToJSON();
}
}
完整的UserInfo.java代码如下:
UserInfo
package json;
public class UserInfo {
public String username;
public String password;
![img](https://img-blog.csdnimg.cn/img_convert/5017262d7076954a6daf20c517bf48ed.png)
![img](https://img-blog.csdnimg.cn/img_convert/cf542c62084504239690d14fe0425232.png)
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化的资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618636735)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
name;
public String password;
[外链图片转存中...(img-0P3ImuTj-1715615369794)]
[外链图片转存中...(img-OXUip5NY-1715615369794)]
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化的资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618636735)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**