使用JDK开发WebServrice案例
使用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案例的更多相关文章
- Unit01: JAVA开发环境案例
Top JAVA Fundamental DAY01 JDK及Eclipse目录结构操作 JDK的安装及配置 控制台版的JAVA HelloWorld 使用Eclipse开发Java应用程序 1 JD ...
- 使用JDK开发WebService
一.WebService的开发手段 使用Java开发WebService时可以使用以下两种开发手段 1. 使用JDK开发(1.6及以上版本) 2.使用CXF框架开发(工作中) 二.使用JDK开发Web ...
- 2.使用JDK开发webService
使用jdk开发webService需要注意:jdk版本必须1.6以及1.6以上! 以下webService的组成部分: server端和client端,通过服务器端(server)webService ...
- Java配置----JDK开发环境搭建及环境变量配置
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/3 ...
- WebService学习总结(三)——使用JDK开发WebService
一.WebService的开发手段 使用Java开发WebService时可以使用以下两种开发手段 1. 使用JDK开发(1.6及以上版本) 2.使用CXF框架开发(工作中) 二.使用JDK开发Web ...
- CodeIgniter开发实际案例-新闻网站【转】
CodeIgniter开发实际案例-新闻网站 转:http://blog.csdn.net/ict2014/article/details/22104711?utm_source=tuicool&am ...
- WebService-使用JDK开发WebService
一.使用JDK开发WebService 2.1.开发WebService服务器端 1.定义一个interface,使用@WebService注解标注接口,使用@WebMethod注解标注接口中定义的所 ...
- WebService学习--(三)使用JDK开发WebService
一.WebService的开发手段 使用Java开发WebService时可以使用以下两种开发手段 1. 使用JDK开发(1.6及以上版本) 2.使用CXF框架开发(工作中) 二.使用JDK开发Web ...
- 【Android Studio安装部署系列】一、JDK开发环境搭建
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 Android Studio安装后自带jre,这个自带jre的版本号肯定比最新的版本号要小. 但是如果项目中没有用到新版本jdk的特 ...
随机推荐
- 如何定位 Node.js 的内存泄漏
基础知识 Node.js 进程的内存管理,都是有 V8 自动处理的,包括内存分配和释放.那么 V8 什么时候会将内存释放呢? 在 V8 内部,会为程序中的所有变量构建一个图,来表示变量间的关联关系,当 ...
- linux 文件常用操作
linux 文件基本操作 新建文件:touch test 不会替换重名文件,并且linux一切都是文件,文件夹和文件不能重名 新建文件夹:mkdir test使用 -p 参数,同时创建父目录(如果不存 ...
- GIT团队合作探讨之一-保持工作同步的概念和实践
感谢英文原文作者,这是我看到的关于git协同工作写的最清晰简洁的文章了: https://www.atlassian.com/git/tutorials/syncing/git-push SVN使用一 ...
- C# FTP删除文件以及文件夹
1.FTP文件操作类 FtpClient using System; using System.Collections.Generic; using System.Linq; using Syst ...
- 如何申请免费域名证书,以及在IIS上绑定
1.前往https://freessl.cn/ 申请域名 证书 2.输入邮箱后,点击创建.文件验证方式 会自动下载一个压缩包,把该压缩包放到所申请的域名首层下.(不要重复创建,需要3,5分钟.最好手动 ...
- mysql实现‘主从复制’
mysql主从复制(超简单) 怎么安装mysql数据库,这里不说了,只说它的主从复制,步骤如下: 首先准备多台服务器,其中一台作为主服务器,从服务器数量自定. 1.主从服务器分别作以下操作: 主服务器 ...
- July 04th 2017 Week 27th Tuesday
Nothing is really beautiful but truth. 只有真理才是真美. Truth can be beautiful, but it also can be cruel. W ...
- 玩转Metasploit系列(第一集)
"如果我有七个小时的时间来砍树,那么我一定会花6个小时来磨我的斧头." –Abraham Lincoln ??这句话一直引导着我做事的思路,而且从未改变过.这篇文章翻译自Offen ...
- Java虚拟机5:常用JVM命令参数
这里汇总一些平时用到的.看到的一些虚拟机参数: (1)-Xms20M 表示设置堆容量的最小值为20M,必须以M为单位 (2)-Xmx20M 表示设置堆容量的最大值为20M,必须以M为单位.将-Xmx和 ...
- php 多种输入参数完整性检查
说明:(1)输入可能有多重类型的输入,即需要对输入参数进行多次匹配. (2)希望能够返回缺少的参数 代码如下: /** * @param $param 输入参数 (get,post 参数) * @pa ...