本文目录一览:
- 1、java对象实体与json之间的转换
- 2、json和java对象相互转换的插件工具有哪些
- 3、json数组转java对象怎么转?
- 4、json格式的字符串转换为java对象
- 5、如何将Java对象转换成json格式,如何将json格式数据转换成js对象
java对象实体与json之间的转换
我的object-json方法是自己实现的,其中可以对Long数组进行特殊处理,你代码中的JSONObject如果不便于修改的话,你可以把Long数组改成ListLong试试,如果不行只能自己扩展一下了
json和java对象相互转换的插件工具有哪些
json使用前必须先引入json的相关jar包,我这里用的是json-lib-2.4-jdk15.jar这个版本的jar包。如果大家没有的话可以直接在我这里下载:点击打开链接
导入完jar就可以正式开始开发了,这里先看一个对象转json的例子:
对象的具体内容如下:
[java] view plain copy
package myapi.json.demo.entity;
import java.util.List;
public class MyBean {
private String Id;
private String Name;
private List CardNum;
public MyBean(String id, String name, List cardNum) {
super();
Id = id;
Name = name;
CardNum = cardNum;
}
json数组转java对象怎么转?
1、需要json的相关jar包
2、设置json格式字符串:
String str="{\"student\":[{\"name\":\"leilei\",\"age\":23},{\"name\":\"leilei02\",\"age\":23}]}";
3、建立相应的类:
public class StudentList {
ListStudent student;
public ListStudent getStudent() {
return student;
}
public void setStudent(ListStudent student) {
this.student = student;
}
}
public class Student {
private String name;
private int age;
//private StudentClass studentClass;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
4、测试程序
import java.util.List;
import org.codehaus.jackson.map.ObjectMapper;
public class JsonToJavaBean {
public static void main(String[] args) {
String str="{\"student\":[{\"name\":\"leilei\",\"age\":23},{\"name\":\"leilei02\",\"age\":23}]}";
Student stu = null;
ListStudent list = null;
try {
ObjectMapper objectMapper=new ObjectMapper();
StudentList studentList=objectMapper.readValue(str, StudentList.class);
list=studentList.getStudent();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
for(Student s:list){
System.out.println(s.getName());
}
}
json格式的字符串转换为java对象
先来解释反斜杠干嘛用的:
你既然提到了是json字符串,对,请注意字符串三个字。什么是字符串?两个引号之间的就是一个字符串比如:"abcdefg"这就是字符串.
假如我有个json对象:
{
"message" : "success"
}
那么问题来了,怎么把它放到一个String字符串对象里呢?
那么我们都会这么做:
String json = "{"message":"success"}";
对吧?但是这么做对吗?前面说过了,字符串是引号开始,引号结尾的,再看一眼这么做对吗?
所以我们需要转义字符去将引号放入字符串当中,而不是字符串定义的功能。“ \" ”就是表示将双引号放入字符串中。
2. json字符串转java对象
下面以ali的fastjson为例,讲解json字符串转json对象:
String jsonStr = "{\"message\" : \"success\"}";
JSONObject jsonObject = JSON.parseObject(jsonStr);
String message = jsonObject.getString("message");
System.out.println(message);
假如你有想要转换成的bean :
public class Info {
private String message;
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}
就可以这样:
String jsonStr = "{\"message\" : \"success\"}";
Info info = JSON.parseObject(jsonStr, Info.class);
System.out.println(info.getMessage());
这里的fastjson只是处理json的框架中的一个,此外还有jackson、Gson等等,可以根据自己的需求选择一个就可以了。
如何将Java对象转换成json格式,如何将json格式数据转换成js对象
commons-collections-3.2.jar
commons-lang.jar
commons-logging-1.1.jar
ezmorph-1.0.4.jar
这时在测试得到了想要的结果
Question q2 = new Question();
q2.setId(2);
q2.setDescription("descrsssss");
q2.setPointInfo("pointkkkk");
q2.setType(3);
Question q1 = new Question();
q1.setId(1);
q1.setDescription("descrsssss");
q1.setPointInfo("pointkkkk");
q1.setType(3);
JSONObject jsonObject = new JSONObject().fromObject(q2);
System.out.println(jsonObject);
List list = new ArrayList();
list.add(q1);
list.add(q2);
JSONArray jsonArr= JSONArray.fromObject(list);
System.out.println(jsonArr);
输出:{"description":"descrsssss","id":2,"pointInfo":"pointkkkk","type":3}
[{"description":"descrsssss","id":1,"pointInfo":"pointkkkk","type":3},{"description":"descrsssss","id":2,"pointInfo":"pointkkkk","type":3}]页面
$.post("showQuestions?type="+type,null,callbackShowQuestions,"json");
这时在回调函数的参数data获得的就是json转换后的js对象数组,
以下标方式便可访问数组里的相应对象信息。