User.java
package com.cn.zjq.entity;
public class User {
private String name;
private String password;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
TestService.java
package com.cn.zjq.service;
import javax.jws.WebService;
import com.cn.zjq.entity.User;
@WebService
public interface TestService {
public User getUserByName(String name);
}
TestServiceImpl.java
package com.cn.zjq.impl;
import javax.jws.WebService;
import com.cn.zjq.entity.User;
import com.cn.zjq.service.TestService;
@WebService(endpointInterface="com.cn.zjq.service.TestService")
public class TestServiceImpl implements TestService{
public User getUserByName(String name) {
User user = new User();
user.setName(name);
user.setPassword("123456");
return user;
}
}
TestWebServiceSend.java
package com.cn.zjq;
import javax.xml.ws.Endpoint;
import com.cn.zjq.impl.TestServiceImpl;
public class TestWebServiceSend {
public static void main(String[] args) {
String address = "http://192.168.10.13:8888/ts";
Endpoint.publish(address, new TestServiceImpl());
System.out.println("发布消息成功");
}
}
TestClinet.java
package com.cn.zjq;
import java.net.MalformedURLException;
import java.net.URL;
import javax.xml.namespace.QName;
import javax.xml.ws.Service;
import com.cn.zjq.service.TestService;
public class TestClinet {
public static void main(String[] args) throws MalformedURLException {
URL url = new URL("http://192.168.10.13:8888/ts?wsdl");
//通过Qname指明服务的具体信息
/*
* 第一个参数:接口的包名称,反序
* 第二个参数:实现类名+Service
* */
QName qname = new QName("http://impl.zjq.cn.com/","TestServiceImplService");
//创建服务
Service service = Service.create(url, qname);
//实现接口
TestService tService = service.getPort(TestService.class);
//以上服务有问题,依然依赖于TestServie接口
User user = tService.getUserByName("zjq");
System.out.println(user.getPassword());
}
}
访问:http://192.168.10.13:8888/ts?wsdl
目录结构:
调用结果: