日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

JDK6下開發WebService

系統 2100 0
?周末閑來無事,在家中復習了一下JDK6下開發WebService的知識,為了加強印象,特此記錄。
一、 ?????? 樣例 開發環境
Java6 開始, JDK 中已經支持用 Java 開發 WebService 應用了,不必選用第三方包。
軟件及其版本
JDK1.6.0_25
Eclipse3.4.2 JavaEE
? 二、 ?????? 樣例工程結構
(1)服務端com.ws.server (手工編寫)
(2) 客戶端 com.ws.client (自動生成)
(3) 客戶端調用 com.ws.client.test (手工編寫)。
?三 、 ???????樣例開發過程
1、新建Dynamic Web Project
2、編寫服務代碼
        package com.ws.server;
import javax.jws.WebService;
@WebService
public class HelloService {
	public String sayHello(String username) {
		return "hello," + username + "! This is HelloService!";
	}
}
      
3、發布服務,在本例中使用Servlet發布服務
          package com.ws.server;
import java.io.IOException;
import java.io.Writer;
import javax.servlet.GenericServlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.xml.ws.Endpoint;
public class HelloServicePublisher extends GenericServlet {

	@Override
	public void init(ServletConfig config) throws ServletException {
		super.init(config);
		System.out
				.println("準備啟動WebService-->http://192.168.1.103:8088/WS_Java6/HelloService");
		// 發布一個WebService
		Endpoint.publish("http://192.168.1.103:8088/WS_Java6/HelloService",
				new HelloService());
		System.out
				.println("成功啟動WebService-->http://192.168.1.103:8088/WS_Java6/HelloService");

	}
	public void service(ServletRequest request, ServletResponse response)
			throws ServletException, IOException {
		response.setCharacterEncoding("GBK");
		Writer wr = response.getWriter();
		wr
				.write("<a );
		wr.close();
	}
}

        
4、生成客戶端
Java6 提供了生成 WebService 客戶端代碼的工具wsimport.exe,只需在命令行輸入一句簡單的命令就可以生成客戶端代碼。需要 注意的是,在生成客戶端前前需要先啟動服務端。如果已經在啟動,就不需要重新啟動。
-p參數指定生成的代碼所要放置的包
在生成的客戶端中有一個java文件的名字是由服務端的類名加上一個Service組成的,這個xxxService我們可以把它看做是 WebService 的一個代理類,在客戶端我們通過這個代理類來調用服務。
5、編寫客戶端調用服務的代碼
          package com.ws.client.test;
import com.ws.client.HelloService;
import com.ws.client.HelloServiceService;
public class ClientTest {
	public static void main(String[] args) {
		// 創建一個客戶端服務對象
		HelloService helloService = new HelloServiceService()
				.getHelloServicePort();
		// 調用服務方法,并得到方法返回值
		String returnContent = helloService.sayHello("張三");
		// 打印服務的返回值
		System.out.println(returnContent);
	}
}
        
6、運行測試代碼
??
?

JDK6下開發WebService


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。。?/p>

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 滁州市| 右玉县| 青州市| 根河市| 洛隆县| 达州市| 宽城| 潜山县| 原阳县| 武胜县| 枣庄市| 辛集市| 资兴市| 维西| 碌曲县| 长宁县| 吐鲁番市| 青田县| 扬州市| 永和县| 虞城县| 泾川县| 隆尧县| 百色市| 广德县| 湄潭县| 宁晋县| 平利县| 维西| 壶关县| 灵台县| 扶风县| 达日县| 扶沟县| 彝良县| 郎溪县| 长武县| 阜城县| 山东省| 郴州市| 定安县|