簡體   English   中英

將Restful Web Service中的JSON存儲在列表中

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM