hessian配置

hessian是实现webservice的一个框架,
hessian传输是http协议之上应用层协议(hessian自定义二进制rpc协议)。
hessian传输小数量数据速度很快。

使用hessian+spring开发webservice的流程:

服务端:
            1. 编写dao,service方法
            2. 使用spring容器发布服务,
            3. 在web.xml配置hessian的servlet
下面是spring配置文件中发布服务接口的方法
<!-- hessian服务
HessianServiceExporter:将service指定的bean生成hessian服务接口
service:提供hessian接口服务的bean
serviceInterface:Hessian服务的接口
 -->
<bean name="/ypxxRemoteService"
class="org.springframework.remoting.caucho.HessianServiceExporter">
<property name="service" ref="ypxxService" />
<property name="serviceInterface">
<value>
cn.xxxx.yycg.hessian.server.YpxxService
</value>
</property>
</bean>
------<!-- hessian和spring整合,配置hessian servlet -->
    <servlet>  
   <servlet-name>Hessian</servlet-name>  
    <servlet-class>  
        org.springframework.web.servlet.DispatcherServlet   
   </servlet-class>  
   <!-- hessian-service.xml配置hessian服务信息 -->
   <init-param>
   <param-name>contextConfigLocation</param-name>
   <param-value>classpath:hessian/hessian-service.xml</param-value>
   </init-param>
    <load-on-startup>1</load-on-startup>  
</servlet>
<servlet-mapping>
<servlet-name>Hessian</servlet-name>
<!-- hessian的接口地址=http://ip:port/工程名/hessian/hessian-service.xml文件中配置的地址 -->
<url-pattern>/hessian/*</url-pattern>
</servlet-mapping>

客户端:
1.使用spring容器创建service的代理对象, 首先把服务端接口及相关的类拷贝到客户端工程,
注意:包名与服务端包名必须一致
<!-- 配置客户端存根 代理对象 -->
<bean id="ypxxServiceProxy" class="org.springframework.remoting.caucho.HessianProxyFactoryBean">
<!-- 配置代理对象的类型即服务端接口类型UserService -->
<property name="serviceInterface">
<value> cn.xxxx.yycg.hessian.server.YpxxService</value>
</property>
<!-- 配置调用服务端接口地址 -->
<property name="serviceUrl">
<value> http://localhost:8080/yycg_sheng/hessian/ypxxRemoteService
</value>
</property>
</bean>
2.在客户端调用服务的方法中注入代理对象的实例,通过代理对象调用方法.

“`

Hessian配置SSL证书通常涉及以下步骤: 1. 准备SSL证书:首先,你需要有一个有效的SSL证书。这个证书可以是自签名的,也可以是由认证机构签发的。如果你还没有证书,可以使用keytool工具(Java提供的证书管理工具)来生成自签名证书。 2. 配置SSL端点:你需要在服务器端配置SSL端点,这通常涉及到设置服务器的SSL上下文。在Java中,这可能意味着使用SSLServerSocketFactory来配置SSL。 3. 客户端配置:客户端也需要配置以信任服务器的SSL证书。这通常意味着需要将服务器的公钥证书导入到客户端的信任证书存储库(Truststore)中。 4. 启用SSL连接:在Hessian中,可以通过配置SSLContext来启用SSL连接。这可能需要编写一些代码来创建SSLContext实例,并将其传递给Hessian的客户端或服务器。 5. 设置Hessian服务:最后,确保你的Hessian服务通过SSLContext配置的SSL端点提供服务,并且客户端通过相同的SSLContext进行连接。 示例代码片段可能如下: ```java // 创建一个SSLContext SSLContext sslContext = SSLContext.getInstance("TLS"); sslContext.init(null, new TrustManager[]{new YourTrustManager()}, new SecureRandom()); // 创建Hessian服务端,并使用SSLContext HessianServletServlet hessianServletServlet = new HessianServletServlet(); hessianServletServlet.setSSLContext(sslContext); // 配置服务器端点等其他必要的配置... // 创建Hessian客户端,并使用SSLContext URL url = new URL("https://yourserver:port/path"); HessianProxyFactory factory = new HessianProxyFactory(); factory.setHttpClient(new HttpClient(new BurlapProxyFactory())); factory.setSSLContext(sslContext); YourRemoteInterface service = (YourRemoteInterface) factory.create(YourRemoteInterface.class, url); ``` 在上面的代码中,`YourTrustManager` 是你自己实现的 TrustManager,负责管理证书的验证。`YourRemoteInterface` 是Hessian服务的接口,`yourserver:port/path` 是你的SSL配置的服务器地址。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值