美文网首页
利用Jcoder发布一个分词服务

利用Jcoder发布一个分词服务

作者: ansj | 来源:发表于2016-07-02 12:08 被阅读0次

    前言

    Jcoder的起源,是我在上一家公司酷云互动做的一个动态代码平台,当时的设计超级复杂,但是的确解决了我们很多线上的问题,最近我想把分词提供一些restful api接口来做到静动分离,这样不用每次更新分词都要重启整个网站,于是想重新写一下这个家伙,在心里大致分析了下需求,从此一发不可收拾,基本上重写了所有的模块。增加了一些比如动态加载jar包,ioc管理,资源文件,上传等实用功能,去掉了分布式,数据库依赖,等过重的功能。吹的再好终究要落地的。下面我和大家一起尝试利用jcoder来做一个分词服务,jcoder的项目地址:https://github.com/NLPchina/Jcoder 为了装逼需要。全写的pinyin。不是用我最擅长的中文,如果看着费劲你可以参看本文章

    准备开发环境

    https://github.com/NLPchina/Jcoder/releases 从这里下载最新的jcoder开发版本,安装jdk8,安装maven

    添加配置文件: 你可以从这找到一个模板coder.conf

    #访问后台的所用的主机名,对于需要开放外网接口,但是管理后台内网使用很有用。保证安全

    host=localhost

    #port=8080

    #home=~/.jcoder

    #maven=mvn

    #log=log/jcoder.log

    同理这5个参数可以通过命令行传入,我们使用如下参数

    java -jar jcoder-1.1.war --home=./jcoder_home --port=9999

    好了现在我们启动jcoder

    第一次初始化可能会稍慢一点。如果你配置了maven环境。会更慢。大约3分钟后。。。。。

    看到这个说明启动成功了

    登陆及说明

    进入页面 http://localhost:9999 ps:我这里是远程主机

    登陆页面

    登陆后我们就进入了后台管理页面

    后台管理

    创建分组

    创建一个组来管理分词服务 选择左侧 Group Manager 选择 Add 

    点击确定,此时左侧列表多出新创建的组

    增加依赖Jar(maven方式)

    选择 Jar Manager 在Maven 表格上选择小铅笔 :)

    进入maven管理配置页面增加你的mvn配置,增加后如下

    maven配置

    选择保存并加载,可以从下方的控制台查看加载过程。

    回到maven管理可以看到你新下载的jar文件

    话说简书很好用,粘贴图片好贴心。下面就开始写代码的过程了。

    构建开发环境

    选择左上角DevSDK。下载开发环境

    随便选吧。因为我们现在也没有资源文件。点击后会开始一个下载过程。

    将下载的zip包解压缩。

    以eclipse为例,以创建新项目的方式导入到eclipse。

    现在创建我们第一个api

    代码如下,简书写代码真的要命。莫非我的打开方式不对?

    进入我们刚才创建的额 分词服务 组 然后选择 `Create Task`

    把代码粘贴进去,并保存

    接口就发布成功了,现在你可以通过api的方式访问接口了,接口格式如下:http://serverName:port/api/[ClassName]/[methodName]?[field]=value

    http://www.nlpcn.org:9999/api/SegApi/toSeg?content=%E4%B8%8A%E6%B5%B7%E5%B8%82%E8%99%B9%E6%A1%A5%E5%9B%BD%E9%99%85%E6%9C%BA%E5%9C%BA

    上面是json的返回格式。你希望返回头是text,请求地址变为http://www.nlpcn.org:9999/api/SegApi/toSeg?content=%E4%B8%8A%E6%B5%B7%E5%B8%82%E8%99%B9%E6%A1%A5%E5%9B%BD%E9%99%85%E6%9C%BA%E5%9C%BA&_callback=fun

    如果你需要jsonp。解决跨域问题。变为

    好了一切都很美好。我们可以增加第二个api。用nlpanalysis进行分词

    编辑api如下并保存

    访问地址http://www.nlpcn.org:9999/api/SegApi/nlpSeg?content=%E4%B8%8A%E6%B5%B7%E5%B8%82%E8%99%B9%E6%A1%A5%E5%9B%BD%E9%99%85%E6%9C%BA%E5%9C%BA&_callback=fun

    ok一切都如此的美好。没有重启。所见即所得!

    当然还有资源文件发布。控制台等下次一我们来解释。写了这么多。希望对你有帮助。

    相关文章

      网友评论

          本文标题:利用Jcoder发布一个分词服务

          本文链接:https://www.haomeiwen.com/subject/dboekttx.html