답변:
대부분의 사람들은 gson을 사용하고 있습니다 : 이것을 확인하십시오
Gson gson = new Gson();
String json = gson.toJson(myObj);
public class Producto {
int idProducto;
String nombre;
Double precio;
public Producto(int idProducto, String nombre, Double precio) {
this.idProducto = idProducto;
this.nombre = nombre;
this.precio = precio;
}
public int getIdProducto() {
return idProducto;
}
public void setIdProducto(int idProducto) {
this.idProducto = idProducto;
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public Double getPrecio() {
return precio;
}
public void setPrecio(Double precio) {
this.precio = precio;
}
public String toJSON(){
JSONObject jsonObject= new JSONObject();
try {
jsonObject.put("id", getIdProducto());
jsonObject.put("nombre", getNombre());
jsonObject.put("precio", getPrecio());
return jsonObject.toString();
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return "";
}
}
더 나은 선택이 될 수 있습니다.
@Override
public String toString() {
return new GsonBuilder().create().toJson(this, Producto.class);
}
toString()
Android Studio 또는 IntelliJ Idea에서 생성 한 기본 방식으로 인쇄 할 때 메소드를 재정의 하면 많은 String 객체가 만들어 지지만 이는 한 줄의 코드이며 GsonBuilder의 강력한 기능을 사용합니다.
Android 용 Spring은 RestTemplate을 사용하여 쉽게이 작업을 수행합니다.
final String url = "http://192.168.1.50:9000/greeting";
RestTemplate restTemplate = new RestTemplate();
restTemplate.getMessageConverters().add(new MappingJackson2HttpMessageConverter());
Greeting greeting = restTemplate.getForObject(url, Greeting.class);
Android 3.0 (API 레벨 11)부터 Android에는 최신 및 향상된 JSON 파서가 있습니다.
http://developer.android.com/reference/android/util/JsonReader.html
JSON (RFC 4627) 인코딩 값을 토큰 스트림으로 읽습니다. 이 스트림에는 리터럴 값 (문자열, 숫자, 부울 및 널)과 객체 및 배열의 시작 및 끝 구분 기호가 모두 포함됩니다. 토큰은 JSON 문서에 표시되는 순서와 동일한 깊이 우선 순서로 순회됩니다. JSON 객체 내에서 이름 / 값 쌍은 단일 토큰으로 표시됩니다.
Gradle 라이브러리를 다운로드하십시오.
compile 'com.google.code.gson:gson:2.8.2'
메소드에서 라이브러리를 사용합니다.
Gson gson = new Gson();
//transform a java object to json
System.out.println("json =" + gson.toJson(Object.class).toString());
//Transform a json to java object
String json = string_json;
List<Object> lstObject = gson.fromJson(json_ string, Object.class);