zoukankan      html  css  js  c++  java
  • RPC hessian简单案例

    RPC(Remote procedure call) 远程服务调用。

    dubbox就是RPC框架,hessian是简单的RPC实现。

    首先需要有接口及其实现类:

    接口。

    public interface HessianService {
    
    	
    	String getHessianServiceMethod();
    	
    }
    

      实现类

    public class HessianServiceImpl implements HessianService{
    	@Override
    	public String getHessianServiceMethod() {
    		
    		System.out.println("On hessian service implement class!");
    		return "hessian service";
    	}
    }
    

      servlet映射:

    在web.xml里面加入

    <servlet> 
               <servlet-name>remoting</servlet-name>
      			  <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
    	          <!-- 默认是加载WEB-INF/servlet-name+"-servlet.xml"文件,在这里可以配置为加载WEB-INF/classes/remoting-servlet.xml这个文件  -->
    	          <init-param>
                  <param-name>namespace</param-name>
                  <param-value>classes/remoting-servlet</param-value>
              </init-param>
               <load-on-startup>1</load-on-startup> 
        </servlet> 
        <servlet-mapping> 
               <servlet-name>remoting</servlet-name> 
               <url-pattern>/remoting/*</url-pattern> 
    	</servlet-mapping> 
    

      再到remoting-servlet.xml中加入实现类映射:

    <!-- hessian RPC -->
    	<bean name="HessianService" class="com.*.hessian.impl.HessianServiceImpl" /> 
    	<bean name="/hessian/HessianService"
    		class="org.springframework.remoting.caucho.HessianServiceExporter">
    		<!-- service引用的具体实现类 -->
    		<property name="service" ref="HessianService"></property>
    		<property name="serviceInterface" value="com.*.hessian.HessianService"></property>
    	</bean>
    

      然后简单的hessianRPC就可以实现了。

    测试:

              String url="http://127.0.0.1:8080/spring/remoting/hessian/HessianService";//spring是项目名
    		HessianProxyFactory hf= new HessianProxyFactory();
    		HessianService hessianService = (HessianService)hf.create(HessianService.class, url);
    		String hessianServiceMethod = hessianService.getHessianServiceMethod();
    		System.out.println("--------"+hessianServiceMethod);
    

      

  • 相关阅读:
    20.12.21 leetcode316
    20.12.18 leetcode389
    NOIP2017退役记
    DNA序列 LOJ NOIP模拟赛 D1T1 字符串哈希
    解药还是毒药 codevs2594 状态压缩 BFS
    换教室 vijos2005 NOIP2016 D1T3 期望DP 图论最短路(雾)
    都市大飙车 UESTC 1652 概率DP
    添加括号 vijos1038 动态规划 区间DP
    一道神奇的并查集
    还有一道神奇的暴力(正解是要旋转坐标轴的)
  • 原文地址:https://www.cnblogs.com/tietazhan/p/6222350.html
Copyright © 2011-2022 走看看