remoting 서비스 예

1、remoting-servlet.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//Spring//DTD Bean//EN"
    "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
	<bean name="/hello/find" class="org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter">
		<property name="service" ref="helloImpl" />
		<property name="serviceInterface" value="com.IHello" />
	</bean>
</beans>

비고: 이 파일 은 "WEB - INF /" 아래 에 두 어야 합 니 다.
2、remoting-client.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//Spring//DTD Bean//EN"
    "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
	<bean name="testRemote" class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">
		<property name="serviceUrl" value="http://localhost:8080/Test/remoting/hello/find" />
		<property name="serviceInterface" value="com.inf.IHello" />
	</bean>
</beans>

3. 웹. xml 설정

<servlet>
	<servlet-name>remoting</servlet-name>
	<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
	<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
	<servlet-name>remoting</servlet-name>
	<url-pattern>/remoting/*</url-pattern>
</servlet-mapping>

4. 호출 방법
방법 1:

ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
IHello hello = (IHello)context.getBean("testRemote");
Result result = hello.findByName("jack");
System.out.println(result.getLstUser().size());

비고: "remoting - client. xml" 기반 설정
방법 2:

//   
HttpInvokerProxyFactoryBean bean=new HttpInvokerProxyFactoryBean();
bean.setServiceUrl("http://localhost:8080/Test/remoting/hello/find");
bean.setServiceInterface(IHello.class);
bean.afterPropertiesSet();//  
IHello hello = (IHello)bean.getObject();
Result result = hello.findByName("jack");
System.out.println(result.getLstUser().size());

5. 장단 점 및 주의사항
1. 장단 점
장점: 효율 이 높 아 로 컬 인터페이스 호출 과 거의 같다.
단점: 플랫폼 을 뛰 어 넘 지 않 음
2. 주의사항
reoting 서 비 스 는 rest 서비스 와 서로 보완 되 고 매개 변수 전달 과 반환 값 에 있어 제한 이 없 으 며 자바 사용자 의 모든 수 요 를 만족 시 킬 수 있 습 니 다.
이 글 은 이전 글 (rest 서비스 예:
http://hdxiong.iteye.com/admin/blogs/998069

좋은 웹페이지 즐겨찾기