1. 怎麼將json對象轉換成一個java對象
public static void jsonStrToJava(){
//定義兩種不同格式的字元串
String objectStr="{\"name\":\"JSON\",\"age\":\"24\",\"address\":\"北京市西城區\"}";
String arrayStr="[{\"name\":\"JSON\",\"age\":\"24\",\"address\":\"北京市西城區\"}]";
//1、使用JSONObject
JSONObject jsonObject=JSONObject.fromObject(objectStr);
Student stu=(Student)JSONObject.toBean(jsonObject, Student.class);
//2、使用JSONArray
JSONArray jsonArray=JSONArray.fromObject(arrayStr);
//獲得jsonArray的第一個元素
Object o=jsonArray.get(0);
JSONObject jsonObject2=JSONObject.fromObject(o);
Student stu2=(Student)JSONObject.toBean(jsonObject2, Student.class);
System.out.println("stu:"+stu);
System.out.println("stu2:"+stu2);
}
2. json字元串怎麼轉換為java對象
您好,鑒於此問題,我將提供您如下的解決方案:
1、首先,加入如下 jar 文件到工程中:
3、控制台輸出結果如下所示:
{"age":90,"houses":[],"id":1,"name":"liNing"}
User [age=90, houses=[], id=1, name=liiNing]
3. java怎麼將json轉換成對象
可以使用jackson的 new ObjectMapper().readValue(String, bean.class);
或者使用 JSONObject.toBean(String,bean.class);
都可以實現json轉化為bean
而 jackson 或者 JSONObject 的jar包網上均有下載,把下載的jar導入你的項目中即可。
4. json數組轉java對象怎麼轉
1、需要json的相關jar包
2、設置json格式字元串:
String str="{\"student\":[{\"name\":\"leilei\",\"age\":23},{\"name\":\"leilei02\",\"age\":23}]}";
3、建立相應的類:
public class StudentList {
List<Student> student;
public List<Student> getStudent() {
return student;
}
public void setStudent(List<Student> 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;
List<Student> 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());
}
}
5. JSON數組怎麼轉換為JAVA可處理對象
packageno.integrasco.ingentia.news.qaedition;
importjava.util.List;
importnet.sf.json.JSONArray;
importnet.sf.json.JsonConfig;
publicclassJsonTest{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args){
//轉換方法2
List<?>list2=JSONArray.toList(array,newPerson(),new
JsonConfig());//參數1為要轉換的JSONArray數據,參數2為要轉換的目標數據,即List盛裝的數據
Personperson=(Person)list2.get(0);
System.out.println(person.getAge());
}
}
6. json字元串怎麼轉化成java對象
import net.sf.json.JSONObject;
public class JsonTest {
public static void main(String[] args) {
String str = "{\"lendperson\":\"李四\",\"lendcompany\":\"有限公司\",\"checkperson\":\"李四\",\"lenddate\":\"2010-07-19T00:00:00\",\"lendcounts\":4,\"" +
"passports\":[{\"passportid\":\"d\",\"name\":\"李豫川\",\"passporttype\":\"K\"},{\"passportid\":\"K9051\",\"name\":\"李平\",\"passporttype\":\"K\"}," +
"{\"passportid\":\"K90517\",\"name\":\"袁寒梅\",\"passporttype\":\"K\"},{\"passportid\":\"K905199\",\"name\":\"賀明\",\"passporttype\":\"K\"}]}";
JSONObject j = JSONObject.fromObject(str);
System.out.println(j.get("lendperson"));
}
}
7. JSON轉為java對象
開始看網上關於json的例子程序段,實驗了一把發現結果和網上例子程序的結果不一致,後來發現使用json需要導入的jar包不全,只導入json-lib-2.2.2-jdk15.jar ,還需以下幾個包:commons-beanutils-1.7.0.jar 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對象數組, 以下標方式便可訪問數組里的相應對象信息。
8. 非常復雜的一個json串,怎麼轉成java對象
1、可藉助開源組件FastJson或者Jackson。
2、自己動手
a、使用反射獲取對象所有的setter方法以及對於所需的參數類型用map對應
b、循環上訴集合,依次使用反射調用set方法,並使用正則匹配json串中的值,可以使用class.getDeclareFileds();獲取變數名,注意若參數是class類型需要反射為實例後填充,class類型匹配json串是也需要注意,因為可能存在嵌套對象中變數名一致的情況。展示部分代碼如下:
3、綜合分析還是建議使用中間件來進行映射。可參考Jackson示例
9. json格式的字元串轉換為java對象
先來解釋反斜杠幹嘛用的:
你既然提到了是json字元串,對,請注意字元串三個字。什麼是字元串?兩個引號之間的就是一個字元串比如:"abcdefg"這就是字元串.
假如我有個json對象:
{
"message" : "success"
}
那麼問題來了,怎麼把它放到一個String字元串對象里呢?
那麼我們都會這么做:
Stringjson="{"message":"success"}";
對吧?但是這么做對嗎?前面說過了,字元串是引號開始,引號結尾的,再看一眼這么做對嗎?
StringjsonStr="{"message":"success"}";
Infoinfo=JSON.parseObject(jsonStr,Info.class);
System.out.println(info.getMessage());
這里的fastjson只是處理json的框架中的一個,此外還有jackson、Gson等等,可以根據自己的需求選擇一個就可以了。
10. 怎樣把JSON對象快速的轉成java對象
用阿里開源的fastjson