WebService在JAVA中的部署(有圖解)
WebService在JAVA中的部署,我學習的時候,有網上看過很多,操作與文章都是幾年前的,很多是用ASMX來部署,太麻煩,要下載的東西太多。而且我試了幾次也沒能完成,最後自己還是選擇了直接用MyEclipse來部署WebService的伺服器和測試客戶端,
WebService部署
我們來自己佈置一個WebService,然後再開發一個客戶端,讓客戶端能通過URL配置用New的方式來訪問WebService類的方法。
接下來,我先講講WebService的配置部署
1.第1步:建立工程
1.先建立一個Web Service Project工程,箭頭那選擇JAX-WS
2.第2步:建立功能測試類
2.建立一個功能測試類,在這我用的是一個基本的加減算數方法;程式碼如下:
package com.qhs.test;
/**
* Web Service測試類;
* 此類使用一個簡單的加減演算法來驗證Web Service建立是否成功
*/
public class TestService {
//加法運算
public int add(int num1, int num2){
return (num1+num2);
}
//減法運算
public int sub(int num1,int num2){
return (num1-num2);
}
}
3.第3步:新增新建Web Service
3.新增一個MyEclipse8.5以上自帶的Web Service,步驟如下:
A.右鍵點選工程--New--Other開啟後,找到MyEclipse下的
Web Service下的Web Service;如下圖:
B.Next後,選擇當前工程名,Strategy項中,選擇第二項;如下圖:
C.Next後,在Java class選項中,選擇第二步建立的功能類,其他選項會自動生成,不用修改。然後Finish,如下圖:
第三步總結:
到此就部署完了我們的Web Service,可以檢視一下在工程包類中,在功能類下面,多了一個類似於功能類的類;
另外,在web.xml中也自動生成了一個
圖為:多出的類與xml
下圖為web.xml中自動生成的servlet模組
4.第4步:加JAR包
別忘了加JAR包:
如上圖,選擇Add新增系統JAR包;跳到下一個頁面時,選擇MyEclipse Libraries然後Next
到下一個頁面,選擇JAX-WS 2.1的兩個JAR包,最後Finish,完成
可以檢視工程內,多了兩個JAR包
5.第5步:測試
部署完後,我們就要測試一下我們的Web Service是否成功。步驟如下:
A. 先把工程加進Tomcat中,然後執行Tomcat。Console無報錯;
出現以上圖,就說明我們的Web Service部署成功!
另外說明一下:URL中TestServicePort 為web.xml中的
?wsdl,是一個引數。返回的就是網頁中的資訊了。
開發客戶端
Web Service部署完了,我們就來開發一個客戶端,去呼叫Web Service中的功能類的方法,並得到功能結果。操作方法簡單:
1.第1步:開發客戶端
A.先建立一個JAVA Project 普通的JAVA工程;我的工程名為ClientHelloWord
b.右鍵點選工程--New--Other開啟後,找到MyEclipse下的Web Service下的Web Service Client ;如下圖:
C.選擇上圖後,點Next到下一頁面,在Project選項中,選擇本工程的名字:ClientHelloWord
Framework選擇JAX-WS即可,然後點 Next,到下一頁
D.在如下圖中的箭頭那填寫我們剛部署完的Web Service的URL,使得客戶端與之為橋樑
E.Next跳到下一頁面。自檢。在框中,無錯誤就可點Next新增兩個JAR包,然後Finish完成客戶端配置,下圖為自檢那步。完成後會跳出個提示框,點Continue即可!
2.第2步:寫客戶端功能實現類
說現實類前,我們先看一下前面一步配置完的結果。看工程,那自動生成了一個類包,和N個類。
接下來,我們實現第二步,建立一個功能實現類,內有main方法,如下圖
注意:
執行上述圖中的客戶端mian方法時,記得把我們部署好的Web Service類,加入Tomcat並執行起來。這親才能讓客戶端從配置中的URL呼叫Web Serivce中的加減方法;輸出結果為上圖所視
相關推薦
WebService在JAVA中的部署(有圖解)
WebService在JAVA中的部署,我學習的時候,有網上看過很多,操作與文章都是幾年前的,很多是用ASMX來部署,太麻煩,要下載的東西太多。而且我試了幾次也沒能完成,最後自己還是選擇了直接用MyEclipse來部署WebService的伺服器和測試客戶端, WebSer
spring 事務處理中,同一個類中:A方法(無事務)調B方法(有事務),事務不生效問題
public class MyEntry implements IBaseService{ public String A(String jsonStr) throws Exception{ UserInfo user = null; UserDetail userDetail = nul
Python中的支援向量機SVM的使用(有例項)
轉載自https://www.cnblogs.com/luyaoblog/p/6775342.html。謝謝作者整理,若侵權告知即刪。 除了在Matlab中使用PRTools工具箱中的svm演算法,Python中一樣可以使用支援向量機做分類。因為Python中的sklearn庫也集成了SVM演算
關於 SAXParseException Content is not allowed in Prolog (前言中不允許有內容)
解析 XML 檔案的時候,如 Mybatis 的 Mapper 檔案,有時會出現 org.xml.sax.SAXParseException 前言中不允許有內容 的異常,英文就是 Content is
【暑假學習筆記】之——用Intellij idea新建一個java web+Servlet專案(有例項)——idea中快速重寫父類的方法
Intellij idea中快速重寫父類方法 在寫java檔案時,有時候需要重寫父類方法,但在idea中建立java檔案時並不會像eclipse一樣可以選擇父類,但是重寫父類方法其實只需要這樣做: 滑鼠點選確定程式碼插入位置,使用快捷鍵CTRL+O,就會彈出選擇方法的視窗
MySQL中ORDER BY與LIMIT一起使用(有坑)
1. 現象與問題 ORDER BY排序後,用LIMIT取前幾條,發現返回的結果集的順序與預期的不一樣 下面是我遇到的問題: 可以看到,帶LIMIT與不帶LIMIT的結果與我預期的不一樣,而且“很不可思議”,真是百思不得其解 後來百度了一下,如
unity3d的GUI元素的界面坐標系統總結(有公式)
lin oid con app rgb 公式 nbsp 多說 tar 大家好,我是孫廣東,我近期在做一個遊戲,UI就是使用了系統提供的GUI。遇到非常多的問題。相信大家經常使用的就是NGUI或者2DTOOLKIT.活不多說。 Unity有四個重要的坐標系統。 能夠查看例
記一次趨勢DS_for_VM_NSX環境的部署(慘痛回憶)
ds 趨勢 nsx客戶虛擬化版本VMware-NSX-Manager-6.3.2-5672532.ovaVMware-VCSA-all-6.5.0-5705665.isoVMware-VMvisor-Installer-201704001-5310538.x86_64.iso 安裝DS,在NSX裏部署gi和d
遍歷所有子物體中renderer(渲染器)中的material(材質)並改變其alpha值實現若隱若現的效果
sys [] object c engine orm 器) gpo gin nts using UnityEngine;using System.Collections;using UnityEngine.UI; public class CubeControl : Mo
38)PHP,獲取數據庫數據並在html中顯示(晉級5)
lis java語言 分享 比賽 meta 用戶名 gen fun etc 首先是我的文件關系: 我的主php文件是index.php,我的配置文件php是BBB.php 我的數據庫操作文件是 b.php 我的html文件是login.html 我的index.
如何加到可選Kernel中?(jupyter notebook)
style python pytho alt 安裝 2.7 分享 log info step1: 打開命令窗口後,輸入 conda create -n env_name python=2.7 即給anaconda安裝了python2.7 step2: 繼續輸入
LNMP部署(地址重寫)
LNMP及地址重寫學習location 作用:可以有多個會匹配地址欄裏的擴展地址進行匹配支持正則: ~ .php$ 代表正則匹配 模糊匹配 以.php結尾的地址 格式rewrite 舊地址 新地址 選項rewrite regex replacement flag 選項flag可以是如下參數last停止執行其
後端list集合中的數據傳遞到前臺HTML中顯示(表格形式)
UNC 姓名 char 響應 防止 數據 前端 格式 ble 關鍵字:web項目中前後臺數據傳遞問題 在學習web項目的過程中,我們肯定會遇到前後臺數據交換問題。這個問題我也思考了很久,今天借此總結一下。由於博主水平有限,如有不當之處,還請大家多多指正,,廢話
Javascript知識匯總------面向對象中繼承(未完成)
clas 繼承性 封裝 class 原型繼承 行為 特征 body 多態性 面向對象的特征就是封裝性,繼承性和多態性 | 封裝:就是將復雜包裹,隱藏起來,讓簡單的東西預留在外面 | 繼承:拿來主義,自己沒用,把別人的拿過來,讓其成為自己的東西
redis安裝部署(Centos6.9)
redis1 下載redis包,編譯安裝 wget http://download.redis.io/redis-stable.tar.gz tar xf redis-stable.tar.gz && cd redis-stable make (若有報錯安裝對應的依賴包;然後先執行
6-11 求自定類型元素序列的中位數(25 分)
\n 相關 n) 以及 std turn clu i++ 測試 6-11 6-11 求自定類型元素序列的中位數(25 分) 本題要求實現一個函數,求N個集合元素A[]的中位數,即序列中第?N/2+1?大的元素。其中集合元素的類型為自定義的ElementType。 函數接口定
java基礎65 JavaScript中的 (網頁知識)
str order 幫助 ron target logs .com font tro 1、待續 待續 原創作者:DSHORE 作者主頁:http://www.cnblogs.com/dshore123/ 原文出自:https://www.cnbl
zabbix部署(server端)
ima use mat ini rec rac 說明 virt col Linux下常用的系統監控軟件有Nagios、Cacti、Zabbix、Monit等,這些開源的軟件,可以幫助我們更好的管理機器,在第一時間內發現,並警告系統維護人員。 今天開始研究下Zabbix,使用
zabbix部署(客戶端)
configure head 關閉 sta etc org make wall lld 環境說明 環境 IP 需要安裝的程序 客戶端 192.168.24.188 zabbix_agentd 1.關閉防火墻和SELINUX [root@linfan ~]
監控服務zabbix部署(server端)
部署 能夠 時也 d3d php-fpm chang ews ace lai zabbix介紹zabbix是一個基於WEB界面的提供分布式系統監視以及網絡監視功能的企業級的開源解決方案。zabbix能監視各種網絡參數,保證服務器系統的安全運營;並提供靈活的通知機制以讓系統管