web service003——通过java-jdk版本发布web service02

Posted 江州益彤

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了web service003——通过java-jdk版本发布web service02相关的知识,希望对你有一定的参考价值。

一、服务端

1.1、UserBean

package com.dgut.bean;

public class UserBean {
	private int id;
	private String name;
	private int age;
	private String sex;
	
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public String getSex() {
		return sex;
	}
	public void setSex(String sex) {
		this.sex = sex;
	}
	
}

1.2、UserDao

package com.dgut.dao;

import javax.jws.WebService;

import com.dgut.bean.UserBean;

/* 使用@WebService注解*/
@WebService
public class UserDao {
	public void hello() {
		System.out.println("hello world!!");
	}
	
	public UserBean findUserBeanById(int id) {
		UserBean userBean=new UserBean();
		
		//真实开发需要连接数据库获取数据
		userBean.setId(id);
		userBean.setName("王二毛");
		userBean.setAge(18);
		userBean.setSex("男");
		
		return userBean;
	}
}

1.3、PublishUserService

package com.dgut.service;

import javax.xml.ws.Endpoint;

import com.dgut.dao.UserDao;

public class PublishUserService {

	public static void main(String[] args) {

		/*
		 * 通过Java jdk自带的类来发布webservice
		 * 
		 * 参数解析:
		 * address:对外提供一个访问地址
		 * HelloWorldDao:向外发布的类
		 * 
		 * 发布webservice时默认生成wsdl说明书
		 * 通过http://localhost:8989/helloworld?wsdl访问wsdl说明书
		 */
		System.out.println("服务端开始发布初始化...");
		
		if (Endpoint.publish("http://localhost:8989/helloworld", new UserDao()) != null) {
			System.out.println("服务端发布成功");
		}
	}

}

二、客户端

2.1、UserInvoke

package com.dgut.client;

import com.dgut.user.UserBean;
import com.dgut.user.UserDao;
import com.dgut.user.UserDaoService;

public class UserInvoke {
	public static void main(String[] args) {

		// 先找接口
		UserDao userDao = null;

		// 找继承了service的类,通过该类得到helloWorldDao的实例z
		UserDaoService userDaoService = new UserDaoService();

		userDao = userDaoService.getUserDaoPort();

		// 调用服务端的方法
		UserBean user=userDao.findUserBeanById(1);
		System.out.println(user.getName());
		System.out.println(user.getAge());
		System.out.println(user.getSex());
	}
	
}

三、结果

以上是关于web service003——通过java-jdk版本发布web service02的主要内容,如果未能解决你的问题,请参考以下文章

redis -003 作为windows服务 自动启动

003.Ansible基础使用

java web003——EL表达式基础使用

003-Web Worker工作线程

web service008——第四种方式调用,通过service调用

攻防世界-web-高手进阶区003-php_rce