Java SE 6封裝了JAX-WS(Java API for XML-Web Services),而JAX-WS同時支持基于SOAP的Web服務和REST風格的Web服務,以下是個人寫的一個實例:
首先是服務端:
首先創建java項目或者web項目都可;
首先編寫service端接口,WebServerInterface(必須已接口形式發布)
@WebService(serviceName="testserver",targetNamespace="http://testserver.com")
@SOAPBinding(style = SOAPBinding.Style.RPC)
public interface WebServerInterface {

@WebMethod
public TestUser getAllTestUsersByUserName(String userName);
}
TestUser.java
package com.server;

public class TestUser {

private int id;
private String usetName;
private String pwd;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUsetName() {
return usetName;
}
public void setUsetName(String usetName) {
this.usetName = usetName;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
}
實現類:
@WebService(endpointInterface="com.server.WebServerInterface")
public class WebServerInterfaceImpl implements WebServerInterface {

@Override
public TestUser getAllTestUsersByUserName(String userName) {
// TODO Auto-generated method stub
return TestUserManager.getUserByName(userName);
}

}
接下來是TestUserManager.java(用戶管理類)
public class TestUserManager {

public static List<TestUser> users;
static{
users = new ArrayList<TestUser>();
for(int i=0;i<=10;i++){
TestUser testUser = new TestUser();
testUser.setId(i);
testUser.setUsetName("userName_"+i);
testUser.setPwd("pwd_"+i);
users.add(testUser);
}
}
public static TestUser getUserByName(String userName){
for(TestUser testUser:users){
if(testUser.getUsetName().equals(userName)){
return testUser;
}
}
return null;
}
}
這樣server就編寫好了 然后就是發布server:當然如果是web項目的話可以通過servlet發布 當然要設置:load-on-startup 為1 在tomcat啟動時初始化發布
public static void main(String[] args) {
Endpoint.publish("http://127.0.0.1:10100/mywebserver", new WebServerInterfaceImpl());
}
運行后webserver就發布好了 可以同ie訪問
接下來是客戶端的訪問:
客戶端可以同eclipse通過wsdl的url來自動生成
也可以自己實現
例如:
URL url = new URL("http://127.0.0.1:10100/mywebserver?wsdl");
QName qname = new QName(" Service service = Service.create(url, qname);
WebServerInterface = service.getPort(WebServerInterface .class);
然后就可以操作了
代碼下載:
/Files/freeman1984/src_server.rar /Files/freeman1984/src_client.rar
首先是服務端:
首先創建java項目或者web項目都可;
首先編寫service端接口,WebServerInterface(必須已接口形式發布)







TestUser.java






























實現類:











接下來是TestUserManager.java(用戶管理類)
























這樣server就編寫好了 然后就是發布server:當然如果是web項目的話可以通過servlet發布 當然要設置:load-on-startup 為1 在tomcat啟動時初始化發布



接下來是客戶端的訪問:
客戶端可以同eclipse通過wsdl的url來自動生成
也可以自己實現
例如:
URL url = new URL("http://127.0.0.1:10100/mywebserver?wsdl");
QName qname = new QName(" Service service = Service.create(url, qname);
WebServerInterface = service.getPort(WebServerInterface .class);
然后就可以操作了
代碼下載:
/Files/freeman1984/src_server.rar /Files/freeman1984/src_client.rar