HanLP封装为web services服务的过程介绍


 

前几天的召开的2019年大数据生态产业大会不知道你们关注到没有,看到消息是hanlp2.0版本发布了。不知道hanlp2.0版本又将带来哪些新的变化?准备近期看可以拿到一些hanlp2.0的资料,若是能顺利拿到的话,到时候分享给你们!今天分享这篇是关于将hanlp封装到web services服务中的。文章的部份内容有修改,阅读室请注意!web

图片51111.png 

 

1. Apache Axis2简要介绍apache

 

Apache Axis2 是一种web services的引擎。支持SOAP和WSDL协议。它有两种语言的实现分别是Java实现的Apache Axis2/Java,和Apache Axis2/C。浏览器

 

Apache Axis2不只支持SOAP1.1和SOAP1.2协议,同时还支持REST风格的协议。比起Apache Axis1,Apache Axis2更加高效,支持XML格式数据传输等。很是容易嵌入模块插件从而提升安全性和稳定性。例如WS-Security和WS-Addressing。tomcat

 

Apache Axis2的主要特征:(1)快速。(2)内存占用小(3)热部署(4)异步Web Services。(5)支持MEP传输规范(6)灵活扩展(7)高稳定性(8)面向组建的部署(9)在SMTP、FTP传输层协议之上(10)支持WSDL协议,易于构建stubs访问服务(11)方便组合和扩展。安全

 

2. 将HanLP封装为web services服务的过程app

 

1)准备工做webapp

 

因为axis2要运行于servlet容器因此必须下载tomcat,解压到C:\Program Files\apache-tomcat-7.0.92,配置环境变量以下异步

Path=C:\Program Files\apache-tomcat-7.0.92\binide

下载axis2的binary安装包,解压到C:\Program Files\axis2-1.7.9,配置环境变量以下函数

AXIS2_HOME=C:\Program Files\axis2-1.7.9

Path=%AXIS2_HOME%\bin

2)编写服务类

 

新建一个service包,并向其中添加服务类

 

package service;

 

import com.hankcs.hanlp.HanLP;

 

public class AnyService {

// 服务接口函数1

public String fun1(String text) {

if(text == null) {

return "";

}else {

return HanLP.XXX(text);

}

}

// 服务接口函数2

public void fun2(String text) {

if(text == null) {

HanLP.XXX(text);

}

}

}

能够定义任意个服务接口函数,函数内部能够实例化任意HanLP的类实例。

 

3)编写services.xml

 

新建一个目录META-INF,并在该目下新建services.xml(文件名不可修改),输入下边内容

 

<service name="AnyService">

<parameter name="ServiceClass">

service.AnyService

</parameter>

<messageReceivers>

<messageReceiver

mep="http://www.w3.org/ns/wsdl/in-out"

class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />

<messageReceiver

mep="http://www.w3.org/ns/wsdl/in-only"

class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />

</messageReceivers>

</service>

其中AnyService能够更换成本身想要的服务名称,可是服务类的名称必须与前边定义的服务类的名称一致。

 

4)导出为 "任意服务名.aar",存储到C:\Program Files\apache-tomcat-7.0.92\webapps\axis2\WEB-INF\services。

 

5)将HanLP配置文件hanlp.properties拷贝到C:\Program Files\apache-tomcat-7.0.92\webapps\axis2\WEB-INF\classes,配置HanLP的data所在目录位置

 

root=填写你的data所在的目录

HanLP会在C:\Program Files\apache-tomcat-7.0.92\webapps\axis2\WEB-INF\classes目录下寻找配置文件,而后读取。

 

5)启动tomcat,使用浏览器访问服务

 

双击C:\Program Files\apache-tomcat-7.0.92\bin目录下的startup.bat文件。在浏览器中访问服务,地址栏输入

 

http://localhost:8080/axis2/services/AnyService/fun1?text=任意想出入的内容

相关文章
相关标签/搜索