使用JDK开发WebServrice案例:

一、开发WebService服务器端

第一步:创建Java工程 ,创建相应的包(服务端)使用JDK开发(1.6以上版本)

第二步:建一个接口WebServiceI,创建方法:

package com.liuyongqi.WebService.service;

import javax.jws.WebMethod;
import javax.jws.WebService; /**
* WebServiceI接口
* @author Administrator
* @data 2018年9月18日
* @time 下午2:14:03
*/
@WebService //使用@WebService注解标注WebServiceI接口
public interface WebServiceI {
/**
* 根据用户名和密码得到该用户的信息
* @param username
* @param password
* @return
*/
@WebMethod //使用WebMethod注解标注WebService接口中的方法
public String getUsersByUsernameAndPassword(String username,String password);
}

第三步:编写WebServiceI接口的实现类WebServiceImpl,使用@WebService注解标注实现类,并实现接口所有方法:

package com.liuyongqi.WebService.service;

import java.util.List;

import javax.jws.WebService;

import com.liuyongqi.WebService.biz.IUsersBiz;
import com.liuyongqi.WebService.biz.impl.UsersBizImpl;
import com.liuyongqi.WebService.pojo.Users; /**
* WebServiceI接口的实现类
* @author Administrator
* @data 2018年9月18日
* @time 下午2:19:51
*/
@WebService //使用@WebService注解标注WebServiceI接口的实现类
public class WebServiceImpl implements WebServiceI{ @Override
public String getUsersByUsernameAndPassword(String username, String password) {
// TODO Auto-generated method stub
IUsersBiz iusersBiz=new UsersBizImpl();
List<Users> list = iusersBiz.getUsersByUsernameAndPassword(username, password);
String str=null;
if(list.size()!=0&&list!=null) {
str="用户名:"+list.get(0).getUsername()+" 密码:"+list.get(0).getPassword();
}
return str;
} }

第四步:写发布类WebServicePublish,使用Endponit(终端)类发布WebService

package com.liuyongqi.WebService;

import javax.xml.ws.Endpoint;

import com.liuyongqi.WebService.service.WebServiceImpl;

/**
* 发布类WebServicePublish,使用Endponit(终端)类发布WebService
* @author Administrator
* @data 2018年9月18日
* @time 下午2:24:09
*/
public class WebServicePublish {
public static void main(String[] args) {
String address="http://192.168.43.82:9003/WebService/UsersService";
Endpoint.publish(address, new WebServiceImpl());
System.err.println("发布成功");
}
}

第五步:使用Eclipse自带的工具测试服务端

第六步:测试网址:

二、客户端(终端)访问WebService

第一步:创建终端工程,主要用来实现接收服务端的暴露。

第二步:找到客户端源代码路径,

在命令框中输入:wsimport -keep http://192.168.43.82:9003/WebService/UsersService?wsdl

第三步:创建Test.java测试类,在main方法中:

package com.liuyongqi.WebServiceClient;

import com.liuyongqi.webservice.service.WebServiceImpl;
import com.liuyongqi.webservice.service.WebServiceImplService; /**
*WebServiceClient测试类
* @author Administrator
* @data 2018年9月18日
* @time 下午2:45:26
*/
public class Test {
public static void main(String[] args) {
//先创建服务对象
WebServiceImplService webServiceImplService = new WebServiceImplService();
//根据服务对象得到端口
WebServiceImpl webServiceImplPort = webServiceImplService.getWebServiceImplPort();
//通过端口调用暴露的方法
String usersByUsernameAndPassword = webServiceImplPort.getUsersByUsernameAndPassword("admin", "123456");
System.out.println(usersByUsernameAndPassword);
} }

如果大家想浏览我的下一篇文章,请留言

使用JDK开发WebServrice案例的更多相关文章

  1. Unit01: JAVA开发环境案例

    Top JAVA Fundamental DAY01 JDK及Eclipse目录结构操作 JDK的安装及配置 控制台版的JAVA HelloWorld 使用Eclipse开发Java应用程序 1 JD ...

  2. 使用JDK开发WebService

    一.WebService的开发手段 使用Java开发WebService时可以使用以下两种开发手段 1. 使用JDK开发(1.6及以上版本) 2.使用CXF框架开发(工作中) 二.使用JDK开发Web ...

  3. 2.使用JDK开发webService

    使用jdk开发webService需要注意:jdk版本必须1.6以及1.6以上! 以下webService的组成部分: server端和client端,通过服务器端(server)webService ...

  4. Java配置----JDK开发环境搭建及环境变量配置

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/3 ...

  5. WebService学习总结(三)——使用JDK开发WebService

    一.WebService的开发手段 使用Java开发WebService时可以使用以下两种开发手段 1. 使用JDK开发(1.6及以上版本) 2.使用CXF框架开发(工作中) 二.使用JDK开发Web ...

  6. CodeIgniter开发实际案例-新闻网站【转】

    CodeIgniter开发实际案例-新闻网站 转:http://blog.csdn.net/ict2014/article/details/22104711?utm_source=tuicool&am ...

  7. WebService-使用JDK开发WebService

    一.使用JDK开发WebService 2.1.开发WebService服务器端 1.定义一个interface,使用@WebService注解标注接口,使用@WebMethod注解标注接口中定义的所 ...

  8. WebService学习--(三)使用JDK开发WebService

    一.WebService的开发手段 使用Java开发WebService时可以使用以下两种开发手段 1. 使用JDK开发(1.6及以上版本) 2.使用CXF框架开发(工作中) 二.使用JDK开发Web ...

  9. 【Android Studio安装部署系列】一、JDK开发环境搭建

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 Android Studio安装后自带jre,这个自带jre的版本号肯定比最新的版本号要小. 但是如果项目中没有用到新版本jdk的特 ...

随机推荐

  1. 花1台的钱入手2台【最能抗DDoS】阿里云主机【攻略】

    花1台的钱入手2台[最能抗DDoS]阿里云主机[攻略]: 第一步:先申请0元半年 http://click.aliyun.com/m/335/:注:0元机器只有新帐号可申请第二步:再买6折37/月 h ...

  2. 浅析 if __name__ == __main__ :

    有句话经典的概括了这段代码的意义: “Make a script both importable and executable” 意思就是说让你写的脚本模块既可以导入到别的模块中用,另外该模块自己也可 ...

  3. 第四次作业-第一次scrum冲刺

    团队成员 周斌 舒 溢 许嘉荣 唐 浩 黄欣欣 1.第一次冲刺任务安排 对Github上的HUSTOJ开源项目进行Fork,搭建基本环境 2.用户需求 ①基本功能显示在首页 ②能够提交题目并判题,并对 ...

  4. C++中long是什么类型

    long long本质上还是整型,只不过是一种超长的整型. int型:32位整型,取值范围为-2^31 ~ (2^31 - 1) .long:在32位系统是32位整型,取值范围为-2^31 ~ (2^ ...

  5. springmvc/springboot处理前台字符串日期自动转换成后台date类型的三种办法

    参考https://blog.csdn.net/eumenides_/article/details/79033505 补充一个:Formatter也可以实现.

  6. Mysql 启动失败常见错误

    各位可以按照顺序逐条拍错. mysql启动时报错:Starting MySQL... ERROR! The server quit without updating PID file (/opt/my ...

  7. 初看Mybatis 源码 (三) SQL是怎么执行的

    前面说到Java动态代理,Mybatis通过这种方式实现了我们通过getMapper方式得到的Dao接口,可以直接通过接口的没有实现的方法来执行sql. AuthUserDao mapper = se ...

  8. Day02——Python基本数据类型

    一.运算符 1.算数运算符 2.比较运算符 3.复制运算符 4.逻辑运算符 5.成员运算符 二.基本数据类型 1.数字 整数(int) 在32位机器上,整数的位数为32位,取值范围为-2**31-2* ...

  9. client、offset、scroll系列

    代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <tit ...

  10. windows10下运行XX-net

    现在墙高了,原来配置的ip4没法用了,所以重新配置一下XX-NET,这篇博客的内容参考了末尾的网站,如果我的办法行不通可以去这个网站查看其他方法 下载XX-NET 打开https://github.c ...