나는 Spring REST 서비스에 대한 REST 호출을하는 여러 가지 메소드가있는 서비스 클래스를 가지고있다. 방법의 각은 다음과 같습니다저지 클라이언트 서비스 - 닫는 자원
public void getUser() {
ClientConfig config = new DefaultClientConfig();
Client client = Client.create(config);
WebResource service = client.resource(RESOURCE_URL);
// Get response as String
String response = service.path("/addUser").accept(MediaType.TEXT_PLAIN)
.get(String.class);
return response;
}
위의 작품을 잘하지만 난 메서드를 호출 할 때마다, ClientConfig, 클라이언트 및 WebResource의 새로운 인스턴스가 생성되는 것을 약간 걱정입니다. 위의 내용을 변경하고 ClientConfig, Client 및 WebResource를 클래스 수준 인스턴스 변수로 변경하면 부작용이 있습니까? 이것에 즉 변화 :
ClientConfig config = new DefaultClientConfig();
Client client = Client.create(config);
WebResource service = client.resource(RESOURCE_URL);
public void getUser() {
// Get response as String
String response = service.path("/addUser").accept(MediaType.TEXT_PLAIN)
.get(String.class);
return response;
}
public void getUserAccount() {
// Get response as String
String response = service.path("/getUserAccount").accept(MediaType.TEXT_PLAIN)
.get(String.class);
return response;
}
여러 사용자가 동시에 다른 방법을 호출하면 실패 할 위의 가능성이 있습니까? 위 구조를 구성하는 가장 좋은 방법은 무엇입니까?
저지 클라이언트 메서드에 close() 메서드가있는 경우 메서드를 그대로두고 메서드 내부의 리소스를 닫을 수있었습니다.
감사합니다. 답장에서 인용 한 문서로 나를 안내 할 수 있습니까? – ziggy
링크 추가를 잊어 버렸습니다. 편집을 참조하십시오. – Perception
완벽한 감사합니다. – ziggy