栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > .Net

.net调用java接口

.Net 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

.net调用java接口

使用JAVA作为服务器端,.NET作为客户端,要想实现.Net调用Java接口,这时候就要用到Web Service。将java方法写入WebServices,从而实现.net调用java接口。

Web Service实际上是一种应用程序分支,它可以使用标准的互联网协议,像超文件传输协议(HTTP)、简单对象访问协议(SOAP)、XML等,将功能纲领性地体现在互联网和企业内部网上,Web服务被视作是Web上的组件编程。Web服务必须提供一套标准的类型系统,用于沟通不同平台、编程语言和组件模型中的不同类型系统。

JAVA开发Web Service的工具有很多,最常用的有Axis、XFire、NetBean等,在JAVA-SE 6.0以上支持JAX-WS2.0 ,JAX-WS 2.0是JAX-RPC 1.0的更新产品。在 JAX-WS中,一个远程调用可以转换为一个基于XML的协议例如SOAP。在使用JAX-WS过程中,开发者不需要编写任何生成和处理SOAP消息的代码。JAX-WS的运行时实现会将这些API的调用转换成为对于SOAP消息。在服务器端,用户只需要通过Java语言定义远程调用所需要实现的接口SEI (service endpoint interface),并提供相关的实现,通过调用JAX-WS的服务发布接口就可以将其发布为WebService接口。在下面我们就以XFire建立一个Web Service。

首先建立一个在一个项目上单击右键,选择MyEclipse->Add XFire Web Service Capabilities,引用了XFire工具包以后。在项目会自动建立一个WebServices文件夹,文件夹里面的service.xml就是对发布Web Service进行配置的。

建立好一个服务层

//建立一个Model包,里面包含一个值对象Person

package Model;

import java.io.Serializable;

publicclass Person implements Serializable {

privateint id;

private String name;

privateint age;

publicint getId(){

return id;

}

publicvoid setId(int id){

this.id=id;

}

public String getName(){

return name;

}

publicvoid setName(String name){

this.name=name;

}

publicint getAge(){

return age;

}

publicvoid setAge(int age){

this.age=age;

}

}

//建立一个Service包,里面包含服务接口

package Service;

import java.util.List;

import Model.*;

publicinterface PersonService {

List GetList();

}

//建立一个ServiceImpl包,实现服务

package ServiceImpl;

import Model.*;

import Service.*;

import java.util.*;

publicclass PersonServiceImpl implements PersonService{

public List GetList(){

List personList=new LinkedList();

Person person1=new Person();

person1.setId(0);

person1.setAge(23);

person1.setName("Leslie");

personList.add(person1);

Person person2=new Person();

person2.setId(1);

person2.setAge(30);

person2.setName("Mike");

personList.add(person2);

return personList;

}

}

服务层代码

然后,在Service.xml上面对服务进行配置

PersonService

http://leslie-pc:8080/PersonService

Service.PersonService

ServiceImpl.PersonServiceImpl

配置功能如下:

service:service 标签和它所包含的 xml 内容为发布成 Web 服务的 POJO 提供完整的描述。

name:Web 服务被发布时所采用的唯一名称。

namespace:Web 服务发布时所使用的命名空间。

serviceClass:Web 服务接口类的全名,包括包名和类名。

implemetationClass:Web 服务实现类的全名,包括包名和类名。

现在可以运行程序,对服务进行测试,在测试时输入服务地址http://leslie-pc:8080/WebSite1/services/PersonService?wsdl,系统将显示wsdl代码。

在服务器端测试成功之后使用.NET对服务进行调用,在项目上单击右键->选择添加Web服务->在URL地址上输入服务的地址http://leslie-pc:8080/WebSite1/services/PersonService?wsdl  ,在一个页面上输入代码进行测试。

protectedvoid Page_Load(object sender, EventArgs e)

{

Service.PersonService personService =new Service.PersonService();

IList personList = personService.GetList();

foreach(Service.Person person in personList)

{

Response.Write("id:"+ person.id.ToString() +" name:"+ person.name +" age:"+ person.age.ToString()+"

");

}

}

测试成功的话,说明.NET已经成功地调用java接口了。但因为Web服务从本质是就是不受开发语言的局限的,所以只要对JAVA跟.NET有一定了解,要通过Web服务实现相互调用其实不难。但往往在一些ERP,OA的开发过程,会在很多时候使用TCP/IP套接字实现软件的功能,TCP/IP这“老家伙”为何使用了这么长时间还会经常见到它的身影,这是因为使用TCP/IP有着更高效率,而且易于通过防火墙的阻隔,而HTTP协议也是建立一TCP/IP之上的。

实现.net调用java接口其实只是webservice强大功能的一个小小的体现。最后,想要了解更多相关的知识可以查看蛙课网的相关课程,相信自己,你也能轻松掌握Java webservice开发。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/908208.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号