2017-02-22 15 views
0

У меня есть два JSON объектовКак слить два объекта JSON?

JsonObject taJson = Json.createObjectBuilder() 
      .add(JSON_NAME, ta.getName()).build(); 
JsonObject taJsontwo = Json.createObjectBuilder() 
      .add(JSON_EMAIL, ta.getEmail()).build(); 
array.add(taJson); 
array.add(taJsontwo); 

Это создает два отдельных объектов JSON, один для имени и один для электронной почты. Мне нужен только один объект с именем и адресом электронной почты. Я не очень хорошо разбирается в JSON или JavaFX, так что я пытался что-то вроде

JsonObject taJson = Json.createObjectBuilder() 
       .add(JSON_NAME, ta.getName()).build(); 
taJson.add(JSON_EMAIL, ta.getEmail()).build(); 

и

JsonObject taJson = Json.createObjectBuilder() 
       .add(JSON_NAME, ta.getName()).build(); 
JsonObject taJson = Json.createObjectBuilder() 
       .add(JSON_EMAIL, ta.getEmail()).build(); 

Но ни одна из этих работ.

+0

Ваша проблема в том, что у вас есть два 'JsonObject' в качестве входных данных или вы хотите создать один с двумя свойствами, и вы просто не знать как? – Alexander

ответ

0

Попробуйте следующее:

JsonObject taJson = Json.createObjectBuilder() 
      .add(JSON_NAME, ta.getName()).build(); 
JsonObject taJsontwo = Json.createObjectBuilder() 
      .add(JSON_EMAIL, ta.getEmail()).build(); 
JSONObject combined = new JSONObject(); 
combined.put("name", taJson); 
combined.put("email", taJsontwo); 
0

Вместо создания двух объектов, добавить его в построитель, как код ниже:

JsonObjectBuilder builder = Json.createObjectBuilder().add(JSON_NAME, ta.getName()); 
builder.add(JSON_EMAIL, ta.getEmail()); 

И когда сделано здание, создать объект, как показано ниже:

JsonObect taJson = builder.build();