1. java2s
創(chuàng)新互聯(lián)建站-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比察哈爾右翼中旗網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式察哈爾右翼中旗網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋察哈爾右翼中旗地區(qū)。費(fèi)用合理售后完善,十多年實(shí)體公司更值得信賴。
這個(gè)網(wǎng)站非常好,分成三大類,分別是Example 、Products 、 Articles ,每個(gè)大類下又分別設(shè)許多小類,還有搜索功能,這樣查找起來非常方便。。比如,如果要學(xué)習(xí)SWT/JFace,只要把Example下的SWT JFace Eclipse 研究一下也就可以了。另外,這個(gè)網(wǎng)站還有JavaScript DHTML 、 C# / C Sharp 、 C / ANSI-C 、 SQL / MySQL 等類??傊?,非常好。
2. codeZoo
這是O'Reily旗下的,除了Java之外,還有Ruby、Python。
3. Java學(xué)習(xí)源代碼檢索系統(tǒng)
難得看見國(guó)產(chǎn)的,好歹也要支持一下,分類也算清楚。
4. Koders
是個(gè)綜合查詢的網(wǎng)站,不過它好像是從代碼中查找關(guān)鍵詞,包含的語言挺多的。
5. Resources for Java server-side developers
確切的說,它是一個(gè)資源收集的網(wǎng)站,代碼查詢并不多。不過它分類相當(dāng)細(xì),如Articles、Books、Examples、Extensions、Frameworks等類,你可以輸入Spring或Hibernate作為關(guān)鍵詞搜索一下看看。
-----
你這一點(diǎn)經(jīng)驗(yàn)都沒有的,基本沒人會(huì)給你任務(wù),別人發(fā)布任務(wù)后都會(huì)先初驗(yàn)任務(wù)作品,滿意后才會(huì)正式把任務(wù)給你。你可以到“豬八戒”網(wǎng)站去找找,任務(wù)基本都在這里發(fā)布。
JDK 1.4.2 + Myeclipse 6.0(實(shí)在經(jīng)不起誘惑,嘗嘗鮮) + Tomcat 5.0.28 + AXIS 1.4。 AXIS 1.4包可以在 找到。 假設(shè)所有的環(huán)境你已經(jīng)搭好,并且AXIS包也已經(jīng)下好了。OK, Here we go~
解壓axis-bin-1_4.zip這個(gè)包可以看到webapps目錄,雙擊進(jìn)入把里面的AXIS文件夾拷到 %TOMCAT_HOME%\webapps目錄下,之后拷貝activation.jar、mail.jar、tools.jar到% TOMCAT_HOME%\webapps\axis\WEB-INF\lib目錄下。啟動(dòng)tomcat,訪問 如果訪問成功,恭喜你!基本的配置你已經(jīng)做完了。
PS:此處的%TOMCAT_HOME%指的是Tomcat的安裝目錄,至于那另外的三個(gè)jar包,J2EE 1.4庫里就能找的到。
現(xiàn)在來說一下最關(guān)鍵的Webservice的發(fā)布。AXIS提供了兩種發(fā)布方式,一種是即時(shí)發(fā)布(Instant Deployment),另外一種是定制發(fā)布(Custom Deployment)。即時(shí)發(fā)布提供了一種非常簡(jiǎn)單的webservice的發(fā)布方式,但是其中限制太多,因此在實(shí)際的開發(fā)中定制發(fā)布才是首選。這里也將會(huì)以定制發(fā)布為重點(diǎn)來介紹。
1.即時(shí)發(fā)布 JWS (Java Web Service) Files - Instant Deployment
即時(shí)發(fā)布提供了一種非常簡(jiǎn)單發(fā)布方式,發(fā)布者只要有Java源代碼(也就是.java文件),然后把其后綴名改成jws(也就是 java web service的縮寫)拷貝到%TOMCAT_HOME%\webapps\axis目錄下即完成了所有的發(fā)布工作。AXIS的編譯引擎會(huì)處理接下來的所有事情。下面是一段示例代碼:
java 代碼
1. public class HelloAXIS {
2.
3. public String Hello(String name){
4. return "AXIS say hello to " + name;
5. }
6. }
把 HelloAXIS.java 文件改成 HelloAXIS.jws 然后拷貝到%TOMCAT_HOME%\webapps\axis目錄下,啟動(dòng)Tomcat之后訪問 如果能看到 Click to see the WSDL這個(gè)超鏈接就說明已經(jīng)發(fā)布成功了,點(diǎn)擊進(jìn)去就可以看到這個(gè)Webservice的WSDL描述文件。server端的發(fā)布已經(jīng)完成了,接下來就是編寫Client端測(cè)試代碼了。
java 代碼
1. package com.chnic.test;
2.
3. import java.net.URL;
4.
5. import javax.xml.namespace.QName;
6.
7. import org.apache.axis.client.Call;
8. import org.apache.axis.client.Service;
9.
10. public class Test {
11.
12. public static void main(String[] args) throws Exception{
13. String targetEendPoint = "" ;
14. Service service = new Service();
15. Call call = (Call) service.createCall();
16. call.setOperationName( new QName(targetEendPoint, "Hello" ));
17. call.setTargetEndpointAddress( new URL(targetEendPoint));
18. String result = (String) call.invoke( new Object[]{ "Robert" });
19. System.out.println(result);
20. }
21. }
測(cè)試代碼很簡(jiǎn)單,如果熟悉java反射機(jī)制的朋友不用兩分鐘就能看明白。運(yùn)行后客戶端控制臺(tái)出現(xiàn) AXIS say hello Robert。測(cè)試成功。果然很簡(jiǎn)單吧。不過在這簡(jiǎn)單背后卻是以犧牲靈活性為代價(jià)的。假如你現(xiàn)在手里只有.class 或者一個(gè)jar包,jws就不再能滿足你的需求了,最要命的就是即時(shí)發(fā)布不支持帶包的類,這點(diǎn)AXIS的用戶手冊(cè)上寫的也很明白。
Important: JWS web services are intended for simple web services. You cannot use packages in the pages, and as the code is compiled at run time you can not find out about errors until after deployment. Production quality web services should use Java classes with custom deployment.
2.定制發(fā)布 Custom Deployment - Introducing WSDD
比起即時(shí)發(fā)布定制發(fā)布更加煩瑣也更復(fù)雜,但是換來的卻是更大的靈活性,因此在實(shí)際項(xiàng)目中定制發(fā)布還是不二的選擇。定制發(fā)布需要你自己編寫一個(gè)WSDD (Web Service Deployment Descriptor)文件,這個(gè)東東類似與XML稍后會(huì)做出介紹。廢話不多說,我們來看代碼:
java 代碼
1. package com.chnic.webservice;
2.
3. public class HelloWorld {
4.
5. public HelloWorld(){
6.
7. }
8.
9. public String hello(String str){
10. return "Hello " + str;
11. }
12.
13. public int add( int a, int b){
14. return a + b;
15. }
16.
17. }
一個(gè)帶包的很簡(jiǎn)單的類,在eclipse下編譯后按照包名拷到 %TOMCAT_HOME%\webapps\axis\WEB-INF\classes 目錄下。以這個(gè)類為例,拷貝完之后這個(gè)HelloWorld.class的路徑就是 %TOMCAT_HOME%\webapps\axis\WEB-INF\classes\com\chnic\webservice。PS: 如果嫌這樣太麻煩,可以另外建一個(gè)Java Web工程用myeclipse的發(fā)布工具發(fā)布到Tomcat之后,整體一次性拷貝到websericve的工程中。
接下來就需要編寫發(fā)布文件deploy.wsdd。到%TOMCAT_HOME%\webapps\axis\WEB-INF 目錄下建立這個(gè)文件并在其中添加如下內(nèi)容:
xml 代碼
1. deployment xmlns =
2. xmlns:java = ""
3.
4. service name = "HelloWorld" provider = "java:RPC"
5. parameter name = "className" value = "com.chnic.webservice.HelloWorld" /
6. parameter name = "allowedMethods" value = "*" /
7. / service
8. / deployment
簡(jiǎn)單的介紹下各個(gè)節(jié)點(diǎn)的含義,"HelloWorld"當(dāng)然是這個(gè)webservice的名字,后面緊跟的java:RPC指的是服務(wù)類型。這里一共有有4種類型,分別是:RPC, Document, Wrapped 和 Message。有興趣可以看下 org.apache.axis.providers這個(gè)包和子包下面的類的API文檔。之后的parameter節(jié)點(diǎn)第一個(gè)當(dāng)然是指出具體的類,第二個(gè)從字面上也很好理解:允許調(diào)用的方法。這里的配置告訴引擎可以調(diào)用所有的public方法,當(dāng)然你也可以自己指定。
編寫完配置發(fā)布文件之后,cmd打開windows的控制臺(tái),進(jìn)入%TOMCAT_HOME%\webapps\axis\WEB-INF目錄下鍵入如下命令
1. java -Djava.ext.dirs=lib org.apache.axis.client.AdminClient deploy.wsdd
之后控制臺(tái)返回Processing file deploy.wsdd 和 Done processing 這兩段話即說明發(fā)布成功。(此時(shí)會(huì)在同級(jí)目錄生成一個(gè)server-config.wsdd文件 )在這里的AdminClient是AXIS提供的一個(gè)客戶端管理工具。至于java.ext.dirs的含義可以去了解一下classloader和JVM類裝載機(jī)制方面的知識(shí),在這里就不多解釋。 還有一點(diǎn)要注意的是在發(fā)布的時(shí)候Tomcat服務(wù)必須處于啟動(dòng)狀態(tài),否則就會(huì)拋出一堆無法連接的異常信息。發(fā)布成功之后你可以通過訪問 來查看你所有的定制發(fā)布的服務(wù)。
客戶端測(cè)試代碼
1. String targetEendPoint = "" ;
2. Service service = new Service();
3. Call call = (Call) service.createCall();
4. call.setTargetEndpointAddress( new URL(targetEendPoint));
5.
6. call.setOperationName( new QName(targetEendPoint, "hello" ));
7. String result = (String) call.invoke( new Object[]{ "Robert" });
8. System.out.println(result);
9.
10. call.setOperationName( new QName(targetEendPoint, "add" ));
11. Integer res = (Integer) call.invoke( new Object[]{ new Integer( 1 ), new Integer( 2 )});
12. System.out.println( "The result is: " + res);
運(yùn)行測(cè)試代碼,控制臺(tái)顯示 Hello Robert 和 The result is: 3 這兩句話,說明發(fā)布成功。仔細(xì)觀察下發(fā)現(xiàn)其實(shí)除了那個(gè)targetEndpoint 之外,即時(shí)發(fā)布和定制發(fā)布的客戶端調(diào)用代碼基本上都是一樣的。定制發(fā)布的URL可以在WSDL文件里找到。
JAVA 的網(wǎng)站,需要JDK/JRE支持,,,,所以,只要符合條件,不管是云還是一般的主機(jī)/虛擬主要,都相似的部署。。。。。。。。至于數(shù)據(jù)庫,也是要符合MYSQL的條件了。。。。。。。
如果是把代碼發(fā)給別人,把整個(gè)工程復(fù)制或者導(dǎo)出,壓縮下發(fā)給別人或者放到網(wǎng)上一個(gè)網(wǎng)絡(luò)硬盤或代碼托管平臺(tái)。
如果是把web工程部署到網(wǎng)上給他人訪問,先把web工程以war的形式導(dǎo)出,war類型的文件可以說就是web工程的webroot的壓縮文件,可以把這個(gè)war文件放到運(yùn)行狀態(tài)的tomcat的webapps的目錄下,tomcat會(huì)自動(dòng)把你的war文件解壓縮并運(yùn)行(相關(guān)處理這里不解釋),然后就可以項(xiàng)目正常的運(yùn)行(比如數(shù)據(jù)庫啥的可以正常連接),就可以通過瀏覽器訪問了。這是在本地的情況,如果是放到網(wǎng)絡(luò)上,你就必須要有的網(wǎng)絡(luò)上的主機(jī),域名,這些你可以在網(wǎng)上找到免費(fèi)的,免費(fèi)資源部落可以找到很多,注意要找提供相關(guān)web服務(wù)環(huán)境的主機(jī),網(wǎng)絡(luò)上有asp主機(jī),php主機(jī)等,你的javaweb就需要jsp的主機(jī),同時(shí)你要注意提供數(shù)據(jù)庫服務(wù)的主機(jī)是跟你提供tomcat主機(jī)是否是同一主機(jī)!!部署到網(wǎng)絡(luò)上的項(xiàng)目不成功,經(jīng)常是因?yàn)閿?shù)據(jù)庫的連接不成功導(dǎo)致。
當(dāng)前名稱:java小代碼發(fā)布網(wǎng) javaweb發(fā)布
網(wǎng)頁鏈接:http://jinyejixie.com/article16/dodphdg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計(jì)、網(wǎng)站設(shè)計(jì)、關(guān)鍵詞優(yōu)化、ChatGPT、用戶體驗(yàn)、軟件開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)