通过RestTemplate查询Spring Data Rest

时间:2019-04-10 03:43:27

标签: spring-boot spring-data-jpa spring-data spring-data-rest

我通过Spring Data Rest构建了Restful API服务器。 当我得到http://localhost:8080/admin/search/findByUsername?username=12345时 它返回

{
  "_embedded" : {
    "admin" : [ {
      "username" : "12345",
      "_links" : {
        "self" : {
          "href" : "http://localhost:8080/admin/35"
        },
        "admin" : {
          "href" : "http://localhost:8080/admin/35"
        }
      }
    } ]
  },
  "_links" : {
    "self" : {
      "href" : "http://localhost:8080/admin/search/findByUsername?username=12345"
    }
  }
}

它具有_embedded_links; 我想通过RestTemplate查询此API,但我只想到了这样的解决方案

    @Data
    static class Res {
        @Data
        static class Embedded {
            @Data
            static class Admin {
                String username;
            }
            List<Admin> admin;
        }
        Embedded _embedded;
    }

    public boolean isAdmin(String username) {
        RestTemplate rest = new RestTemplate();
        Res res = rest.getForObject(url + "admin/search/findByUsername?username=" + username, Res.class);
        return !res.get_embedded().getAdmin().isEmpty();
    }

我认为这不是一个好主意。 那么有一些优雅的方法可以解决吗? 谢谢!

0 个答案:

没有答案