JavaでXMLを解析し、json形式に変換する(2)

3201 ワード

元の住所:http://www.2cto.com/kf/201402/279640.html
でも二つのモデルならね!私が書いたプロジェクトの中で二つのモデルで取得しなければならないからです。まずプロジェクトの中でバックグランドから受け取ったxmlを並べます。

 
   true 
     
      0
       Normal
         
     
     
       0
       Normal
         
     
 
このようなモデルを解析するには別のフォーマットが必要です。
import java.util.List;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import java.util.ArrayList;
/**
 *  model  list   ,       json  
 * */
public class xmlJdom {
    public static void main(String[] args) {
        Student s1=new Student();
        s1.setAge(123);
        s1.setNameString(name);
        Student s2=new Student();
        s2.setAge(1234);
        s2.setNameString(what);
        Teacher teacher=new Teacher();
        teacher.setsAge(11);
        teacher.setsName(teacher);
        List lists=new ArrayList();
        lists.add(s1);
        lists.add(s2);
        teacher.setStudent(lists);
        new JSONObject();
        JSONObject jsonObject = JSONObject.fromObject(teacher); 
        System.out.println(jsonObject); 
        List list = new ArrayList();    
        list.add(s1); 
        list.add(s2);
        JSONArray jsonArr= JSONArray.fromObject(list); 
        System.out.println(jsonArr);
    }
}
出力の内容は:
{sAge:11,sName:teacher,student:[{age:123,nameString:name},{age:1234,nameString:what}]}
[{age:123,nameString:name},{age:1234,nameString:what}]
二つのモデル:StudentとTecher
teacherにはstudentのリストが含まれています。
public class Student {  
   
    private String nameString;  
    private int age;  
     
    public String getNameString() {  
        return nameString;  
    }  
    public void setNameString(String nameString) {  
        this.nameString = nameString;  
    }  
    public int getAge() {  
        return age;  
    }  
    public void setAge(int age) {  
        this.age = age;  
    }  
       
}
import java.util.List;
 
 
public class Teacher {
    private String sName;
    private int sAge;
    private List student;
    public List getStudent() {
        return student;
    }
    public void setStudent(List student) {
        this.student = student;
    }
    public String getsName() {
        return sName;
    }
    public void setsName(String sName) {
        this.sName = sName;
    }
    public int getsAge() {
        return sAge;
    }
    public void setsAge(int sAge) {
        this.sAge = sAge;
    }
}
これでいいです今はもうマスターしました。
 
転載する場合は出典を明記してください。Finder_暢気である