前段时间为了完成项目中的远程调用功能,查了很多资料,学习了Webservice远程调用和Spring远程调用,现在将Spring远程调用的方法总结如下,希望对有需要的人能够提供一点点帮助。
远程调用分为两个工程:客户端和服务器端,每个工程都必须添加Spring 的Core,AOP,Remoting,Web 4个jar包。
服务器端如下:
src下有一个包,包下有一个接口和一个实现了该接口的类
接口和实现类内容:
public interface HelloService {
String getPerson(String name);
}
public class HelloServiceImpl implements HelloService {
public String getPerson(String name) {
// TODO Auto-generated method stub
return "Hello "+name;
}
}
包结构图如下:
WebRoot下的WEB-INF下有两个配置文件 web.xml和server_config.xml
web.xml的内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<servlet-name>remoteservice</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/server_config.xml
</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>remoteservice</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
server_config.xml的内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<!--<bean id="service" class="hello.HelloService"></bean>
--><bean id="serviceImpl" class="hello.HelloServiceImpl"></bean>
<bean name="/service.do"
class="org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter">
<property name="serviceInterface" value="hello.HelloService"></property>
<property name="service" ref="serviceImpl"></property>
</bean>
</beans>
客户端如下:
src下有一个包和一个配置文件client.xml,包内有一个和服务器端一致的接口和一个测试类
包结构图如下:
测试类的内容如下:
public class TestService {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
ApplicationContext context = new ClassPathXmlApplicationContext("client_config.xml");
HelloService service = (HelloService)context.getBean("serviceProxy");
String str = service.getPerson("zhangrongrong");
System.out.println(str);
}
}
client.xml的内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean id="serviceProxy"
class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">
<property name="serviceUrl"
value="http://127.0.0.1:8080/spring_server/service.do">
</property>
<property name="serviceInterface"
value="chello.HelloService">
</property>
</bean>
</beans>
- 大小: 8.9 KB
- 大小: 8 KB
分享到:
相关推荐
spirng远程调用可运行简单实例。包含所需所有jar spring-*-3.*.RELEASE.jar aopalliance.jar等。
主要介绍了spring cloud feign实现远程调用服务传输文件的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
适合有spring框架的javaEE平台,出自spring的HttpInvokerServiceExporter导出器,依赖Spring.jar
Spring远程调用使用http方式,将server和client直接部署后,进入http://localhost/HttpClientSpringRMIClient/即可
使用 spring 的 httpinvoker 进行远程调用
三种方式实现java远程调用(rmi) 方式一:原始方式 方式二:spring 方式三:jndi 解压,放到myeclipse上可用
上文我们利用Spring rmi实现了Spring的远程访问(Spring 实现远程访问详解——rmi),本文主要讲解利用HttpInvoke实现远程访问。 Spring httpInvoker使用标准java序列化机制,通过Http暴露业务服务。如果你的参数和...
spring RMI 远程接口调用 包含服务端客户端程序,可完整运行
通过使用 RmiProxyFactoryBean 和 RmiServiceExporter,并且,Spring支持两个传统的RMI(使用 java.rmi.Remote接口和java.rmi.RemoteException)和通过RMI调用器实现的暴露远程调用(支持任何Java接口)。...
struts2.3.4+spring3.2.0+hibernate4+hibernate_generic_dao struts hibernate spring最大化使用注释 基于spring的远程调用
SpringCloud Alibaba Nacos集群+ Feign 实现远程调用案例
SpringBoot+Dubbo+Nacos实现远程服务调用
OpenFeign 和 Dubbo一样是一个RPC远程调用框架,目的是使的我们调用接口和调用本地方法一样简单,开发者无需关心和远程的交互细节( 即不需要通过常规的 Http Client 构建请求再解析返回数据,让开发者在调用远程接口...
使用Robot屏幕截图,然后通过websocket发送至页面显示。 页面通过websocket发送鼠标事件,服务器端模拟鼠标事件,从而实现bs架构的远程控制。 没事玩玩而已,不是啥高级代码。
Spring 远程调用 -- C# 访问java WEB 服务,之前写的Demo,希望对大家有所帮帮助!
基于springboot的两个项目之间的远程调用,有问题请提出
主要介绍了使用Spring Cloud Feign远程调用的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
Spring Web Services 是基于 Spring 框架的 Web 服务框架,主要侧重于基于文档驱动的Web服务,提供 SOAP 服务开发,允许通过多种方式创建 Web 服务。本章利用Apache CXF构建和开发webservice. 1. webservice远程...
一个基于Spring的rmi实现,测试成功,可以远程调用。
给予spring的框架。 封装了xfire、rmi、hessian、httpinvoker 客户端可以统一调用,省略了远程调用的编码。 服务通过服务ID和服务接口来调用。