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);
//以上服務有問題,依然依賴於IMyServie接口
User user = tService.getUserByName("zjq");
System.out.println(user.getPassword());
}
}
訪問:http://192.168.10.13:8888/ts?wsdl
目錄結構:
調用結果: