android

gson 사용법

디츠 2020. 2. 4. 23:32

* MainActivity.java

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Student student = new Student(1, "김하나", 90, 90, 90);

        // object > json
        Gson gson = new Gson();
        String gsonObject = gson.toJson(student);
        println("gson Object : " + gsonObject);

        HashMap<Integer, String> hashmap = new HashMap<Integer, String>();
        hashmap.put(1, "김하나");
        hashmap.put(2, "김두나");
        hashmap.put(3, "김세나");

        // hashmap > json
        Gson gson2 = new Gson();
        String gsonHashmap = gson2.toJson(hashmap);
        println("gson Hashmap : " + gsonHashmap);

        // json > Object
        Gson gson3 = new Gson();
        Student gsonJson = gson3.fromJson(gsonObject, Student.class);
        println("번호 : " + gsonJson.getNum() + ", 이름 : " + gsonJson .getName());
    }

    public void println(String data) {
        Log.d("MainActivity", data);
    }

}

* Gradle

dependencies {
    implementation 'com.google.code.gson:gson:2.8.5'
}