`

Hessian 简单例子

阅读更多

hello.hessian.MyCar.java

package hessian.pojo;

import java.io.Serializable;


public class MyCar implements Serializable {

    private static final long serialVersionUID = 4736905401908455439L;

    private String carName;

    private String carModel;

    public String getCarName() {
        return carName;
    }

    public String getCarModel() {
        return carModel;
    }

    public void setCarName(String pCarName) {
        carName = pCarName;
    }

    public void setCarModel(String pCarModel) {
        carModel = pCarModel;
    }

    @Override
    public String toString() {
        return "my car name:[" + this.carName + "] model:[" + this.carModel
                + "].";
    }
}

 

 

hessian.service.HelloHessian.java

package hessian.service;

import hessian.pojo.MyCar;

import java.util.List;
import java.util.Map;

public interface HelloHessian {
    String sayHello();

    MyCar getMyCar();

    List myLoveFruit();

    Map myBabays();
}

 

hessian.service.impl.HelloHessianImpl.java

package hessian.service.impl;

import com.caucho.hessian.server.HessianServlet;
import hessian.pojo.MyCar;
import hessian.service.HelloHessian;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class HelloHessianImpl extends HessianServlet implements HelloHessian {

    public MyCar getMyCar() {
        MyCar car = new MyCar();
        car.setCarName("阿斯顿·马丁");
        car.setCarModel("One-77");
        return car;
    }

    public Map myBabays() {
        Map map = new HashMap();
        map.put("son", "孙吴空");
        map.put("daughter", "孙小美");
        return map;
    }

    public List myLoveFruit() {
        List list = new ArrayList();
        list.add("apple");
        list.add("kiwi");
        list.add("orange");
        return list;
    }

    public String sayHello() {
        return "welcom to Hessian";
    }

}

 

hessian.Main.java

package hessian;

import com.caucho.hessian.client.HessianProxyFactory;
import hessian.service.HelloHessian;

public class Main {

    public static String url = "http://localhost:8888/InfoWeb/Hello";

    public static void  main(String[] args)throws Exception{
        HessianProxyFactory factory = new HessianProxyFactory();

        HelloHessian helloHession = (HelloHessian) factory.create(HelloHessian.class, url);

        System.out.println(helloHession.sayHello());
        System.out.println(helloHession.getMyCar());
        System.out.println(helloHession.myBabays());
        System.out.println(helloHession.myLoveFruit());
    }
}

 

web.xml

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
	
	<servlet>
		<servlet-name>Hello</servlet-name>
		<servlet-class>com.caucho.hessian.server.HessianServlet</servlet-class>
		<init-param>
			<param-name>home-class</param-name>
			<param-value>hession.service.impl.HelloHessianImpl</param-value>
		</init-param>
		<init-param>
			<param-name>home-api</param-name>
			<param-value>hession.service.HelloHessian</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>

	<servlet-mapping>
		<servlet-name>Hello</servlet-name>
		<url-pattern>/Hello</url-pattern>
	</servlet-mapping>
</web-app>

 

pom.xml

    <dependencies>
        <!--=========================== hession =========================== -->
        <dependency>
            <groupId>com.caucho</groupId>
            <artifactId>hessian</artifactId>
            <version>4.0.33</version>
        </dependency>

        <!--=========================== Servlet Api ===========================-->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
            <version>2.5</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>

 

分享到:
评论
1 楼 lijiejava 2015-03-13  

相关推荐

    hessian简单实例

    在“hessian简单实例”中,我们有两个关键部分:`hessian-server`和`hessian-client`。`hessian-server`是服务端程序,它实现了我们需要暴露给客户端调用的方法;而`hessian-client`则是客户端程序,它负责连接到...

    Hessian 学习 例子 实例

    接下来,我们通过一个简单的实例来加深理解。假设我们有一个`Person`类,包含`name`和`age`两个字段。我们可以创建一个服务,该服务接受一个`Person`对象并返回其年龄。服务端使用Hessian序列化`Person`对象,客户端...

    hessian学习实例

    通过实践这些例子,你可以更好地理解Hessian的工作机制,以及如何在实际项目中应用它。同时,这也是一个很好的起点,帮助你进一步探索如何优化Hessian服务的性能,或者与其他技术(如负载均衡、安全控制等)进行集成...

    spring mvc hessian maven简单实例

    在"Spring MVC Hessian Maven简单实例"中,我们将探讨如何将这三个技术结合在一起,以实现一个远程服务调用的解决方案。 首先,我们需要创建一个Maven项目,配置pom.xml文件来管理Spring MVC、Hessian和其它相关...

    hessian使用小例子

    现在,让我们通过一个简单的Java示例来了解如何使用Hessian。在这个例子中,我们将创建一个服务器端服务并暴露一个方法,然后在客户端调用这个远程方法。 1. 首先,我们需要在服务器端定义一个服务接口和实现类。...

    Hessian工程实例

    Hessian是由Caucho Technology开发的一种二进制RPC(Remote Procedure Call)协议,它允许Java对象以高效的二进制格式在网络间进行传输,使得远程调用如同本地调用一样简单。在这个工程实例中,我们将探讨如何在...

    spring 集成 hessian例子

    Hessian是一个轻量级的remoting onhttp工具,使用简单的方法提供了RMI的功能。 相比WebService,Hessian更简单、快捷。采用的是二进制RPC协议,因为采用的是二进制协议,所以它很适合于发送二进制数据。参考文档地址...

    hessian包及一个简单的使用实例

    这里我们提供了一个使用Hessian 4.0.37的简单实例,包括服务器端和客户端的创建。 #### 服务器端(Server) 首先,定义一个服务接口和其实现: ```java public interface HelloWorldService { String sayHello...

    Hessian学习简单demo

    在这个简单的demo中,我们将探讨Hessian的核心概念,以及如何在实际应用中使用它。 首先,我们需要理解什么是数据序列化。数据序列化是将对象的状态转化为可存储或传输的形式的过程。在Hessian中,这个过程使得Java...

    hessian 使用实例

    Hessian提供了一种简单、快速的方式将Java对象序列化为字节流,然后在服务端和客户端之间进行传输。这种方式比XML或JSON等文本格式更加高效,因为它的数据体积小,解析速度快。 ### Hessian的基本原理 Hessian协议...

    hessian入门小例子

    总结一下,Hessian入门小例子通过创建一个简单的Hessian服务和客户端,展示了如何利用Hessian协议进行远程调用。通过这个例子,开发者可以学习如何在Java项目中集成Hessian,提升服务间的通信效率,同时减少网络开销...

    Hessian实例下载

    Hessian的目标是提供一种快速、简单的方式来进行跨网络的对象方法调用,使得分布式系统开发更为便捷。在这个“Hessian实例”中,我们可以找到Hessian在实际应用中的具体示例和相关库文件。 标题提及的“Hessian实例...

    Hessian例子.rar

    在Hessian的例子中,我们通常会看到以下关键知识点: 1. **序列化与反序列化**:Hessian协议能够将Java对象序列化为二进制格式,然后在网络上传输,到达目的地后进行反序列化恢复成原来的对象。这种方式相比XML或...

    C#中Hessian的使用例子

    以下是一个简单的例子: ```csharp // 服务端接口 [ServiceContract] public interface IMyService { [OperationContract] string HelloWorld(); } // 服务端实现 public class MyServiceImpl : IMyService { ...

    Hessian例子.doc

    在例子中,通过`factory.create(IHessian.class, url)`创建了`IHessian`接口的代理实例,并将服务URL传入。 - `HessianTest`的`main`方法展示了如何使用代理调用远程服务。`url`的格式是`...

    hessian通讯的安卓实现的简单DEMO

    这个“hessian通讯的安卓实现的简单DEMO”是一个示例项目,用于展示如何在Android平台上利用Hessian进行通信。下面将详细介绍Hessian在Android中的应用以及相关知识点。 1. **Hessian协议**:Hessian由Caucho公司...

    基于spring+hessian框架的webservice实例

    在这个实例中,我们学习了如何利用Spring的自动装配和Hessian的高效通讯能力,实现了一个简单的Web Service。这种方式适用于需要快速、轻量级交互的场景,特别适合于内部服务之间的通信,或者对性能有较高要求的应用...

    利用hessian进行系统通信实例教程

    在Spring中集成Hessian,可以方便地实现服务的发布和消费,使得系统间的通信变得更加简单。 1. **配置Hessian服务端** - 首先,我们需要创建一个服务接口和服务实现类。 - 在Spring的配置文件中,使用`&lt;bean&gt;`...

Global site tag (gtag.js) - Google Analytics