为了账号安全,请及时绑定邮箱和手机立即绑定

关于.net引用java创建的服务

标签:
Java C#

因为一些原因,希望将ASP.NET MVC 底层的逻辑用JAVA实现,然后为.NET平台提供服务进行调用。查阅了很多资料,现在整理一个入门级实例记录下来。

攻克点:
1、JAVA如何创建服务?
2、JAVA如何发布服务?
3、C#r如何引用服务?
4、C#如何调用服务?

一、关于JAVA WebService
讲解实例之前给大家介绍一个开源的Service框架:CXF(官网下载地址)。关于这个东东的详细介绍大家可以直接百度或者去官网看英文版介绍,目前大家只需要知道它可以帮助构建和开发Service。关于它的安装和系统变量配置教程也有很多,我就不在这里赘述了。

进入正题:

1、打开Eclipse,创建一个JAVA Project(Java项目),命名为ServiceDemo;

2、在项目的Bulid Path中导入外部jar包,即下载下来的CXF文件包里lib路径下的所有jar包;

3、src上右键,New->Interface,Package:com.demo.service,命名:Welcome

@WebService
public interface Welcome {
    public String WelcomeWords(String customer);
}

4、新建实现类WelcomeImpl ,实现接口Welcome

@WebService
public class WelcomeImpl implements Welcome {

    public String WelcomeWords(String customer) 
    {
        System.out.println("WelcomeWords方法被调用");        
        return "欢迎" + customer + "的光临!";
    }

}

5、发布服务MainService类

//发布webservice
public class MainService{
    public static void main(String[] args) {
        //第一种方式:通过CFX提供的JaxWsServerFactoryBean来发布WebService
        JaxWsServerFactoryBean factory = new JaxWsServerFactoryBean();
        factory.setAddress("http://localhost:8081/Welcome");
        factory.setServiceClass(WelcomeImpl.class);
        Server server = factory.create();
        server.start();

        //客户端调用代码
        Welcome hello = new WelcomeImpl();
        System.out.println(hello.WelcomeWords("小红"));

        //第二种方式:通过JAX-WS提供的Endpoint来发布webservice
        //WelcomeImpl implementor = new WelcomeImpl();
        //String address = "http://localhost:8081/HelloWorld";
        //Endpoint.publish(address, implementor);
    }

}

代码完毕,在主服务类上右键运行,会在控制台输入“WelcomeWords方法被调用”和“欢迎小红的光临”字样。
在浏览器中输入 http://localhost:8081/HelloWorld?wdsl,服务正常的情况下会显示wdsl文档的内容

6、打开VS,在要引用该服务的项目上右键-》添加-》服务引用,输入之前在浏览器中输入的地址,点前往,确认当前确实有服务。

7、可以创建一个控制台项目,在main方法中输入以下代码进行测试。

static void Main(string[] args)
{
    WelcomeService.WelcomeClient client = new WelcomeService.WelcomeClient();
    Console.WriteLine(client.WelcomeWords("小明"));
    Console.ReadKey();
}

运行项目,在控制台可以看到“欢迎小明的光临”字样。 同时,在Eclipse的控制台有“WelcomeWords方法被调用”输出。

我的入门级例子说完了,大家有什么其他好的解决方案可以告诉我。

点击查看更多内容
6人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
JAVA开发工程师
手记
粉丝
21
获赞与收藏
100

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消