<div class="iteye-blog-content-contain" style="font-size: 14px">
简单的Spring+hessian
Jar包:
dist\modules里面的 spring-webmvc.jar
lib\caucho 里面的hessian-3.1.3.jar
Server:
里面有个接口interface:
public interface IBasic {
public String helloWorld();
public User getUser();
}
接口的实现:
public class IBasicServer implements IBasic {
@Override
public String helloWorld() {
return "hello world!!";
}
@Override
public User getUser() {
User user =new User();
user.setName("nie");
user.setPassword("123");
return user;
}
}
建立一个model层:(实现Serializable接口)
public class User implements Serializable {
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
private String name;
private String password;
}
Web.xml里面配置:
<servlet>
<servlet-name>remoting</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>remoting</servlet-name>
<url-pattern>/remoting/*</url-pattern>
</servlet-mapping>
在WEB-INF下面创建一个remoting-servlet.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="accountService" class="nie.wei.qing.Server.implment.IBasicServer">
</bean>
<bean name="/AccountService" class="org.springframework.remoting.caucho.HessianServiceExporter">
<property name="service" ref="accountService"/>
<property name="serviceInterface" value="nie.wei.qing.Server.IBasic"/>
</bean>
</beans>
客户端同样的要有interface IBasic 和model层 User(实现Serializable接口)
在src下面建立一个remote-client.xml
<bean id="accountService" class="org.springframework.remoting.caucho.HessianProxyFactoryBean">
<property name="serviceUrl" value="http://localhost:8080/Hissian-Server/remoting/AccountService"/>
<property name="serviceInterface" value="nie.wei.qing.Server.IBasic"/>
</bean>
使用JUnit来测试;测试代码:
try
{
ApplicationContext context = new ClassPathXmlApplicationContext("remote-client.xml");
IBasic basic =(IBasic)context.getBean("accountService");
System.out.println(basic.helloWorld());
}
catch (Exception e)
{
e.printStackTrace();
}</div>
分享到:
相关推荐
在这个实例中,我们学习了如何利用Spring的自动装配和Hessian的高效通讯能力,实现了一个简单的Web Service。这种方式适用于需要快速、轻量级交互的场景,特别适合于内部服务之间的通信,或者对性能有较高要求的应用...
标题 "OSGI+SpringDM+Hessian" 涉及到三个重要的技术概念,它们分别是OSGI(Open Services Gateway Initiative)、SpringDM(Spring Dynamic Modules)和Hessian。这些技术在Java开发领域中都有其独特的应用和价值。...
标题 "外部接口调用 使用spring4+hessian4实例" 涉及到的是在Java开发中,通过Spring框架和Hessian库实现远程服务调用的一个技术主题。Spring框架是Java领域广泛使用的轻量级框架,它提供了丰富的功能,包括依赖注入...
总的来说,Spring4和Hessian4的结合使用,为Java开发者提供了一种简单而高效的远程服务调用方案,能够帮助构建可扩展的分布式系统。通过深入学习和实践,我们可以掌握更多关于服务治理、微服务架构以及分布式系统...
Spring AOP和Hessian是两个在Java开发中广泛使用的技术,尤其在分布式系统和服务治理中。下面将详细解释这两个概念以及它们如何结合使用。 **Spring AOP(面向切面编程)** Spring AOP是Spring框架的一个重要组成...
Hessian是一个轻量级的remoting onhttp工具,使用简单的方法提供了RMI的功能。 相比WebService,Hessian更简单、快捷。采用的是二进制RPC协议,因为采用的是二进制协议,所以它很适合于发送二进制数据。参考文档地址...
Dubbo支持多种协议,如RPC、REST、Hessian等,使得不同技术栈的服务间通信变得简单。 三、Spring与Dubbo整合 1. **服务提供者(Provider)**:使用Spring配置服务提供者,将服务接口及其实现类声明为Spring Bean,...
通过上述配置,我们可以实现Spring中基于Hessian的RPC通信,使得服务间的调用变得高效且简单。`HelloHessianService`和`HelloHessianClient`可能分别代表服务提供方和服务消费方的代码实现,它们是整个Hessian通信的...
在"Spring MVC Hessian Maven简单实例"中,我们将探讨如何将这三个技术结合在一起,以实现一个远程服务调用的解决方案。 首先,我们需要创建一个Maven项目,配置pom.xml文件来管理Spring MVC、Hessian和其它相关...
【标题】"spring、hessian通过tomcat的简单环境应用源代码"涉及到的是在Java Web开发中使用Spring框架和Hessian服务序列化技术在Tomcat服务器上的集成与应用。Spring是一个广泛使用的开源Java应用程序框架,它提供了...
1、开发环境:eclipse3.1 + jdk1.5; 2、样例说明: 1)spring + hessian; 2)hessian。 3、样例内容: 1)HashMap传递; 2)简单对象传递; 3)异常处理
以上就是Spring、SpringMVC与Hessian RPC结合的简单示例。通过这个例子,我们可以了解到如何在Spring中配置Hessian服务,并在客户端进行调用。这对于初学者来说是一个很好的起点,可以深入理解分布式系统的通信机制...
基于java实现hessian进行服务器之间数据交互demo项目 实现功能: 1.基于spring 2.5.6+hessian3.1.6带有签名安全机制 2.基于servlet代理机制实现HessianServlet,进行简单IP地址校验功能!