昨天发现有这样的好东西!研究了一下,发现很不错!介绍个大家学习学习,而且这个资料比较少,希望能让大家入门了!
定义一个接口
package study.hessian;
public interface IBasic {
public String hello();
public Person getPerson();
}
一个接口的实现类
package study.hessian;
public class BasicService implements IBasic {
private String hello= "Hello, Vincent";
public String hello()
{
return hello;
}
public Person getPerson() {
Person person = new Person();
person.setColor("Yello");
person.setLength("176cm");
person.setName("vincent");
return person;
}
}
定义一个实体,必须实现序列化接口,因为要通过网络传输
package study.hessian;
import java.io.Serializable;
public class Person implements Serializable{
private static final long serialVersionUID = 3276641446246664L;
private String name;
private String length;
private String color;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getLength() {
return length;
}
public void setLength(String length) {
this.length = length;
}
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
}
web.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<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>study.hessian.BasicService</param-value>
</init-param>
<init-param>
<param-name>home-api</param-name>
<param-value>study.hessian.IBasic</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>hello</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
</web-app>
客户端的类
package study.hessian;
import com.caucho.hessian.client.HessianProxyFactory;
public class BasicClient {
public static void main(String []args)
throws Exception
{
String url = "http://127.0.0.1:8080/WorkTest/hello";
HessianProxyFactory factory = new HessianProxyFactory();
IBasic basic = (IBasic) factory.create(IBasic.class, url);
System.out.println(basic);
Person person = basic.getPerson();
System.out.println("Hello: " + basic.hello());
System.out.println("Hello: " + person.toString());
}
}
String url = http://127.0.0.1:8080/WorkTest/hello;
WorkTest 工程名字
在http://hessian.caucho.com 下载一个 hessian.jar文件倒到工程就可以了!
分享到:
相关推荐
<url-pattern>/hessian/HelloService</url-pattern> </servlet-mapping> ``` 服务端配置完成后,可以启动应用,此时服务就已经对外暴露了。 然后是客户端(SpringHessianClient)的配置。在客户端,我们需要创建...
【Dubbo小例子】是一个...这个小例子虽然代码量不多,但它涵盖了Dubbo的核心功能,是初学者快速入门的好材料。通过深入研究和实践,开发者可以进一步掌握Dubbo在实际项目中的应用,提升分布式系统的设计和开发能力。
同时,Dubbo还需要处理数据的序列化与反序列化,如Hessian、Fastjson等,确保服务间的通信效率和兼容性。 4. **负载均衡**:当有多个服务提供者时,Dubbo会自动进行负载均衡,确保请求能均匀地分发到各个节点,提升...
在这个“opencv+java特征点算法demo例子”中,我们将深入探讨如何使用OpenCV与Java结合来实现高效的特征点检测和匹配,从而达到高识别率,至少98%以上。 特征点是图像中的兴趣点,它们在不同的图像条件下保持不变或...
Dubbo 是一款高性能、轻量级的开源 Java RPC 框架,它的配置指南对于初学者和入门者来说是理解其工作原理的关键。本指南主要介绍 Dubbo 的配置元素及其在服务发现、治理和性能调优中的作用。 首先,我们要了解的是...
这个函数由Todd Wittman编写,他来自美国明尼苏达大学的数学系,提供了多种流形学习方法的实现,包括多维缩放(MDS)、等距映射(ISOMAP)、局部线性嵌入(LLE)、Hessian LLE、拉普拉斯特征映射(Laplacian)、扩散映射...
这个例子提供了一个很好的起点,帮助学习者理解如何在OpenCV中实现这些基本操作,从而实现自己的图像处理项目。 总结来说,"SURF+RANSAC+图像拼接.rar"压缩包中包含了一个基于OpenCV的图像处理程序,用于演示如何...
本示例是针对初学者设计的,旨在帮助新手快速理解 Dubbo 的基本工作原理和使用方法。 在入门阶段,首先需要了解的是 Dubbo 的核心概念: 1. **服务提供者(Provider)**:提供服务的应用,通过注册中心将自己的...
8. HelloWorld例子:通过一个简单的“HelloWorld”例子来演示Dubbo的基本使用方法,从而让初学者快速上手。 9. 核心机制分析:深入到Dubbo的源码中,分析其核心机制,包括设计模式的应用、Bean的加载、Spring可扩展...
例如,`optimexamples`函数可以打开一个包含大量示例的交互式浏览器,通过这些例子,用户可以逐步了解如何设置优化问题、调用优化函数以及解读结果。 总的来说,MATLAB为解决优化问题提供了一套完整的解决方案,...
1. 图像特征检测:这是图像处理中的关键步骤,包括边缘检测(如Canny算法、Sobel算子等)、角点检测(如Harris角点检测、Hessian矩阵检测)以及纹理分析(如Gabor滤波器、局部二值模式(LBP)等)。这些特征对于图像...
【描述】"有例子证明解决方案,具有基准功能"表明这个压缩包包含的可能是一个完整的MATLAB项目,该项目不仅提供了牛顿搜索的实现代码,还有具体的实例来验证算法的有效性。基准功能通常意味着它包含了一些标准测试...
2. **特征检测**:包括边缘检测(Canny、Sobel、Laplacian等),角点检测(Harris、Shi-Tomasi、Hessian等),轮廓提取以及模板匹配。 3. **对象识别与跟踪**:Emgu CV提供多种算法进行目标检测,如Haar级联分类器...
这本书和课件的组合为初学者提供了一个全面了解和深入学习凸优化的理想资源。 首先,"BOOK convex optimization slides.pdf"可能是课程的幻灯片,通常包含简洁明了的概念定义、关键定理、公式以及实例分析。幻灯片...
8. 实例和脚本:压缩包可能包含了各种示例代码和脚本,这些实例可以帮助初学者理解如何在实际问题中应用上述概念。 通过研究这些例子和练习,用户不仅可以加深对微积分的理解,还能掌握在实际问题中运用Matlab进行...
这个例子是用纯Java编写的,不依赖任何JDK之外的第三方库,因此非常适合初学者理解和学习。RPC的核心思想是透明性,即客户端可以像调用本地方法一样调用远程服务器上的方法,而无需关心网络通信的细节。 首先,RPC...
这个例子主要用于介绍和教授kgBFGO算法,kgBFGO是一种优化算法,常用于寻找函数的最小值。下面我们将深入探讨MATLAB编程、kgBFGO算法以及如何在MATLAB环境中应用它。 MATLAB,全称为“矩阵实验室”(Matrix ...
L-BFGS不需要存储或计算大量的Hessian矩阵(二阶导数矩阵),而是通过有限的历史梯度信息来近似Hessian。 在MATLAB中,这样的工具箱通常会提供友好的接口,使得用户能够方便地输入目标函数和初始点,然后调用优化...
4. 图像特征提取:这部分可能会讲解边缘检测(如Sobel、Canny算法)、角点检测(如Harris角点检测、Hessian矩阵)以及纹理分析等技术。 5. 图像分割:这是图像处理中的重要环节,可能涉及阈值分割、区域生长、基于...
- **实战应用**:通过具体的例子来展示正则表达式的实际应用,帮助读者更好地理解其工作原理,并能够在实际项目中灵活运用。 #### 程序优化:提升性能的关键技巧 - **空间与时间的权衡**:深入探讨了程序性能优化...