JsonTest.java
import java.util.ArrayList;
public class JsonTest
{
/**
* @param args
*/
public static void main(String[] args)
{
ArrayList<String> lecture = new ArrayList<String>();
lecture.add("국어");
lecture.add("영어");
lecture.add("수학");
Student student = new Student(1, "학생", "학교", lecture);
Student student2 = Student.makeStudentFromJsonObject(student.getJsonObject());
System.out.println("student: " + student);
System.out.println("student2: " + student2);
}
}
========================================================================================
import java.util.ArrayList;
import java.util.List;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
public class Student
{
private int id;
private String name;
private String major;
private List<String> lecture;
public Student()
{
this(-1, "", "", new ArrayList<String>());
}
public Student(int id, String name, String major, List<String> lecture)
{
this.id = id;
this.name = name;
this.major = major;
this.lecture = lecture;
}
public static Student makeStudentFromJsonObject(JSONObject obj)
{
Student student = null;
JSONArray array = (JSONArray)obj.get("lecture");
ArrayList<String> arrayList = new ArrayList<String>();
int id = (Integer)obj.get("id");
String name = (String)obj.get("name");
String major = (String)obj.get("major");
for(int i = 0; i < array.size(); i++)
{
arrayList.add((String)array.get(i));
}
id++;
student = new Student(id, name, major, arrayList);
return student;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getMajor() {
return major;
}
public void setMajor(String major) {
this.major = major;
}
public List<String> getLecture() {
return lecture;
}
public void setLecture(List<String> lecture) {
this.lecture = lecture;
}
public JSONObject getJsonObject()
{
JSONObject studentObj = new JSONObject();
JSONArray studentLectureArray = new JSONArray();
studentObj.put("name", name);
studentObj.put("major", major);
studentObj.put("id", id);
for(String l : lecture)
{
studentLectureArray.add(l);
}
studentObj.put("lecture", studentLectureArray);
return studentObj;
}
@Override
public String toString()
{
int i = 1;
String result = "id=" + id + "\n" + "name=" + name + "\n" + "major=" + major + "\n";
for(String l : lecture)
{
result += "lecture" + i + "=" + l + "\n";
i++;
}
return result;
}
}
student: id=1
name=학생
major=학교
lecture1=국어
lecture2=영어
lecture3=수학
student2: id=2
name=학생
major=학교
lecture1=국어
lecture2=영어
lecture3=수학