Spring HttpInvoker一种JAVA远程方法调用框架实现,使用的是HTTP协议,允许穿透防火墙,使用JAVA系列化方式,但仅限于Spring应用之间使用,即调用者与被调用者都必须是使用Spring框架的应用。基本原理如下:
在server端,springAOC管理着controller(bean),并暴露出远程调用的接口。在Client端,借助spring产生一个代理对象,通过代理对象实现与服务端的交互。
-
服务器端配置
1. 加入jar包
2. 在.xml中配置spring远程调用的servlet:
service org.springframework.web.servlet.DispatcherServlet service *.service
3.在spring配置文件中配置并发布远程调用端口:
com.spring.service.HelloService
-
客户端配置
1.加入jar包,将服务器端service接口(并不需要实现类)和所用bean代码导入过来;
2. 在spring.xml中配置代理对象:
com.spring.service.HelloService http://localhost:8989/springservice/ss.service
配置好以后测试调用即可,注意:此远程调用方法传输的是序列化的对象,若需要传输自定义对象时,对应的类需要序列化,即实现Serializable接口。