java學習心得筆記

1) a single status code

2) any number of http headers

3) a response body

5. servlet之間信息共享的一個最簡單的方法就是

system.getproperties().put(“key”,”value”);

6. post和get

post:將form內各欄位名稱和內容放置在html header內傳送給server

get: ?之後的查詢字元串要使用urlencode,經過urlencode後,這個字元串不再帶有空格,以後將在server上恢復所帶有的空格。

get是web上最經常使用的一種請求方法,每個超連結都使用這種方法。

7. web.xml就是web applicatin 的deployment descriptor

作用有:組織各類元素

設定init param

設定安全性

8. request dispatcher用來把接收到的request forward processing到另一個servlet

要在一個response里包含另一個servlet的output時,也要用到request dispatcher.

9. servlet和jsp在同一個jvm中,可以通過serveltcontext的

setattribute( )

getattribute( )

removeattribute( )

來共享對象

10. 利用request.getparameter( )得到的string存在字元集問題。

可以用 strtitle = request.getparameter(“title”);

strtitle = new string(strtitle.getbytes(“8859-1”),”gb2312”);

如果你希望得到更大得兼容性

string encoding = response.getcharacterencoding();

//確定application server用什麼編碼來讀取輸入的。

strtitle = new string(strtitle.getbytes(encoding),”gb2312”);

xml

1.xml基礎知識

1. 一個xml文檔可以分成兩個基本部分:

首部( header )

內容( content )

2. xml名字空間規範中指定:

xml文檔中的每一個元素都處在一個名字空間中;如果沒有指定的名字空間,預設的名字空間就是和該元素相關聯的名字空間。

3. a document that is well-formed obeys all of the rules of xml documents (nested tags, etc.)

" if a well-formed document uses a document type definition (more on these in a minute), and it follows all the rules of the dtd, then it is also a valid document

4. a tag is the text between the <angle brackets>;

" an element is the start tag, the end tag,and everything (including other elements) in between

5. 標籤( tags ) 實際上包含了“元素”( elements ) 和 “屬性”( attributes )兩部分。

用元素( elements )來描述有規律的數據。

用屬性( attributes ) 來描述系統數據。

如果你有一些數據要提供給某個應用程式,該數據就可能要用到一個元素。

如果該數據用於分類,或者用於告知應用程式如何處理某部分數據,或者該數據從來沒有直接對客戶程式公開,那么它就可能成為一種屬性。

6. cdata (讀作:c data ) c是character的縮寫。

7.org.xml.sax.reader

/|\

org.xm.l.sax.xmlreader

/|\

org.apche.xerces.parsers.saxparser

2.webservice

2.1 webservice的基本概念

webservice是一種可以接收從internet或者intranet上的其它系統中傳遞過來的請求,輕量級的獨立的通訊技術。

這種技術允許網路上的所有系統進行互動。隨著技術的發展,一個web服務可以包含額外的指定功能並且可以在多個b2b套用中協作通訊。

web服務可以理解請求中上下文的關係,並且在每一個特定的情況下產生動態的結果。這些服務會根據用戶的身份,地點以及產生請求的原因來改變不同的處理,用以產生一個唯一的,定製的方案。這種協作機制對那些只對最終結果有興趣的用戶來說,是完全透明的。

uddi

在用戶能夠調用web服務之前,必須確定這個服務內包含哪些商務方法,找到被調用的接口定義,還要在服務端來編制軟體。所以,我們需要一種方法來發布我們的web服務。

uddi (universal description, discovery, and integration) 是一個主要針對web服務供應商和使用者的新項目。uddi 項目中的成員可以通過uddi business registry (ubr) 來操作web服務的調用,ubr是一個全球性的服務。

web服務供應商可以在ubr中描述並且註冊他們的服務。

用戶可以在ubr中查找並定位那些他們需要的服務。

uddi是一種根據描述文檔來引導系統查找相應服務的機制。

uddi包含標準的“白皮書”類型的商業查詢方式,

“黃皮書”類型的局部查找,以及

“綠皮書”類型的服務類型查找。

uddi利用soap訊息機制(標準的xml/http)來發布,編輯,瀏覽以及查找註冊信息。它採用xml格式來封裝各種不同類型的數據,並且傳送到註冊中心或者由註冊中心來返回需要的數據。

wsdl

對於商業用戶來說,要找到一個自己需要使用的服務,他必須知道如何來調用。

wsdl (web services description language) 規範是一個描述接口,語義以及web服務為了回響請求需要經常處理的工作的xml文檔。這將使簡單地服務方便,快速地被描述和記錄。

以下是一個wsdl的樣例:

<?xml version="1.0"?>;

<definitions name="stockquote"

;