[英]Store JSON from Restful Web Service in List
我創建了一個RESTful Java客戶端,並且嘗試將JSON從服務器存儲到列表中,但似乎無法做到這一點。 試圖使用findAll()方法,但到目前為止還沒有運氣。 我還能怎么做? 我的代碼如下:
注意:已刪除所有對XML的引用。 一切都是JSON。
SalaryStructureClient.java
package Consumer;
import javax.ws.rs.ClientErrorException;
import javax.ws.rs.client.Client;
import javax.ws.rs.client.WebTarget;
public class SalaryStructureClient {
private WebTarget webTarget;
private Client client;
private static final String BASE_URI = "http://swiftworld.com/mass/web";
public SalaryStructureClient() {
client = javax.ws.rs.client.ClientBuilder.newClient();
webTarget = client.target(BASE_URI).path("salarystructure");
}
public void remove(String id) throws ClientErrorException {
webTarget.path(java.text.MessageFormat.format("{0}", new Object[]{id})).request().delete();
}
Control.java
public String getCount() {
count = getClient().countREST();
return count;
}
public List<SalaryStructure> getList() {
list = getClient().findAll(List.class); //Don't really know what to do here...
return list;
}
public void saveToDB(){
JsonObject json = Json.createObjectBuilder()
.add("structureLongName", structure.getStructureLongName())
.add("structureShortName", structure.getStructureShortName())
.build();
getClient().create(json);
structure = new SalaryStructure();
}
所有其他方法均正常運行。
謝謝。
經過長時間的研究,終於可以使用以下方法使其工作:
public List<SalaryStructure> getList() {
list = client1.target("http://swiftworld.com/mass/web")
.path("salarystructure")
.request(MediaType.APPLICATION_JSON)
.get(new GenericType<List<SalaryStructure>>() {});
return list;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.