计算机语言分类有很多,如C、C++、C#、Java、Php、Python等等,她们有各自的特性及擅长的领域,但她们各自又不是全能的。在一个稍微大型一点的项目都会用到多种语言共同完成,那么这些编程语言如何进行通信呢。什么意思呢,就是比如说我Java写的一个方法,其他编程语言要怎么去调用呢?这就是本文要探讨的问题了。
一般来说,方法层面的编程语言通信用的是网络接口形式,只暴露出形参和结果供别人调用。接口一般分为接口定义者和接口调用者,定义者可以规定接收参数的类型及返回形式,而接口定义者则只能完全按照接口定义者规定的参数进行访问。就叫是我们所说的webService(网络服务)。
以前的做法是利用XML作接口格式定义,然后通过Http做通讯和请求,如大名鼎鼎的SOAP,其实现在也是的,只不过现在流行RestFul风格的Rest接口形式,但用的还是XML+HTTP,那这两者有啥区别呢?最大的区别就是SOAP返回的主要是XML格式,有时还需要附带一些辅助文件,而Rest则还可以返回JSON类型的字符串,减少了很多繁乱的XML标签。本文就以Java为例,用她写一个接口,并让其他人去调用,以此来简单展示接口调用是怎么样一个过程。
步骤:
1、本机装有Java JDK运行环境及编程IDE(如Myeclipse)
2、建立一个maven项目,用以下载jar包,项目结构如下:
3、pom.xml文件内容如下:
4、applicationContext.xml内容如下:
5、web.xml则主要配置采用的容器、日志管理及拦截器,拦截器可以实现到达请求郑涛之前进行身份认证,踢除没有访问资格的请求,而rest项目一般是用Jersey容器。配置如下:(kendy只是我的英文名,你们可以自己定义路径)
6、拦截器如下:
7、注册Jersey容器所要管理的类
8、接口定义(Restful风格)
9、调用接口,有多种方式,本文用HttpClient
10、返回接口
11、最后通过Map、List和Json工具对返回来的字面量进行各种处理。
-
接口
+关注
关注
33文章
8588浏览量
151096 -
JAVA
+关注
关注
19文章
2967浏览量
104733
发布评论请先 登录
相关推荐
评论