国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設計 > 正文

webservice使用JDK自帶的jax-ws創(chuàng)建并發(fā)布一個簡單的webservice

2019-11-08 02:32:54
字體:
來源:轉載
供稿:網(wǎng)友


JDK自帶的jax-ws創(chuàng)建并發(fā)布一個簡單的webservice

1、創(chuàng)建服務提供接口

package com.zhangy.webservice;import javax.jws.WebParam;import javax.jws.WebResult;import javax.jws.WebService;@WebServicepublic interface IMyService {	 /**     * @WebResult(name="add")     *     此注解可加可不加,如果加了但不指定name屬性的值跟沒加是一樣的,     *      加上name的效果就是在wsdl文件的定義中將該方法的返回值的名稱固定了,     *      而不是【方法名Response】,例如add方法的返回參數(shù)的定義將為:addResponse     *      * @WebParam(name="a")     *     此注解是將方法的參數(shù)的名稱用一個有意義的名稱進行定義,     *     如果不定義那wsdl中將是arg0、arg1....這種無意義的名稱     * @param a     * @param b     * @return     *///	如果不想用默認的命名空間(包反轉),可以通過如下方法修改////	@WebService("targetNamespace=http://com.zhangy.webservice/")////	需要注意的是:如果只在接口上加上這個自定義的命名空間而不在實現(xiàn)類上加會導致wsdl文件里命名空間出現(xiàn)2個不同的(一個默認、一個自定義)	@WebResult(name="addResult")	public int add(@WebParam(name="a")int a,@WebParam(name="b")int b);		public int minus(int a,int b);			}

2、服務接口的實現(xiàn)類

package com.zhangy.webservice;import javax.jws.WebParam;import javax.jws.WebResult;import javax.jws.WebService;@WebService(endpointInterface="com.zhangy.webservice.IMyService")//這里指定服務的接口類的路徑public class MyServiceipml implements IMyService {	@Override	@WebResult(name="addResult")	public int add(@WebParam int a,@WebParam int b) {		// TODO Auto-generated method stub		System.out.PRintln(a+"+"+b+"="+(a+b));		return a+b;	}	@Override	public int minus(int a, int b) {		// TODO Auto-generated method stub		System.out.println(a+"-"+b+"="+(a-b));		return a-b;	}}

3、服務發(fā)布類

package com.zhangy.webservice;import javax.xml.ws.Endpoint;public class MyServer {	public static void main(String[] args) {		String address = "http://localhost:8888/ns";		Endpoint.publish(address, new MyServiceIpml());	}}

4、測試類

package com.zhangy.webservice;import java.net.MalformedURLException;import java.net.URL;import javax.xml.namespace.QName;import javax.xml.ws.Service;public class TestCilent {	public static void main(String[] args) {		try {			URL url = new URL("http://localhost:8888/ns?wsdl");						//使用namespaceURL和服務名創(chuàng)建QName	        //<definitions ... targetNamespace="http://ws01.yzl.com/" name="MyServiceImplService">	        //<service name="MyServiceImplService">			QName sname = new QName("http://webservice.zhangy.com/", "MyServiceIpmlService");						//創(chuàng)建服務			Service service = Service.create(url,sname) ;						//服務器和客戶端在同一機器時可以直接用服務的接口類,不在同一機器的具體用法見后面的章節(jié)			IMyService ms = service.getPort(IMyService.class);			ms.add(1, 1);		} catch (MalformedURLException e) {			// TODO Auto-generated catch block			e.printStackTrace();		}		}}


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 正蓝旗| 罗田县| 枣强县| 扎赉特旗| 连州市| 封丘县| 金湖县| 宝应县| 东莞市| 南召县| 昭苏县| 昌江| 房山区| 富民县| 准格尔旗| 武川县| 青铜峡市| 华阴市| 汝阳县| 泰来县| 中江县| 东丽区| 卢氏县| 嘉峪关市| 武穴市| 连江县| 峡江县| 都昌县| 凌云县| 香港| 南丹县| 南宫市| 榆林市| 甘孜县| 清水县| 永安市| 浮梁县| 大邑县| 罗城| 平湖市| 铜山县|