java學(xué)習(xí)心得筆記
1) a single status code
2) any number of http headers
3) a response body
5. servlet之間信息共享的一個(gè)最簡(jiǎn)單的方法就是
system.getproperties().put(“key”,”value”);
6. post和get
post:將form內(nèi)各字段名稱和內(nèi)容放置在html header內(nèi)傳送給server
get: ?之后的查詢字符串要使用urlencode,經(jīng)過urlencode后,這個(gè)字符串不再帶有空格,以后將在server上恢復(fù)所帶有的空格。
get是web上最經(jīng)常使用的一種請(qǐng)求方法,每個(gè)超鏈接都使用這種方法。
7. web.xml就是web applicatin 的deployment descriptor
作用有:組織各類元素
設(shè)置init param
設(shè)置安全性
8. request dispatcher用來把接收到的request forward processing到另一個(gè)servlet
要在一個(gè)response里包含另一個(gè)servlet的output時(shí),也要用到request dispatcher.
9. servlet和jsp在同一個(gè)jvm中,可以通過serveltcontext的
setattribute( )
getattribute( )
removeattribute( )
來共享對(duì)象
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基礎(chǔ)知識(shí)
1. 一個(gè)xml文檔可以分成兩個(gè)基本部分:
首部( header )
內(nèi)容( content )
2. xml名字空間規(guī)范中指定:
xml文檔中的每一個(gè)元素都處在一個(gè)名字空間中;如果沒有指定的名字空間,缺省的名字空間就是和該元素相關(guān)聯(lián)的名字空間。
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. 標(biāo)簽( tags ) 實(shí)際上包含了“元素”( elements ) 和 “屬性”( attributes )兩部分。
用元素( elements )來描述有規(guī)律的數(shù)據(jù)。
用屬性( attributes ) 來描述系統(tǒng)數(shù)據(jù)。
如果你有一些數(shù)據(jù)要提供給某個(gè)應(yīng)用程序,該數(shù)據(jù)就可能要用到一個(gè)元素。
如果該數(shù)據(jù)用于分類,或者用于告知應(yīng)用程序如何處理某部分?jǐn)?shù)據(jù),或者該數(shù)據(jù)從來沒有直接對(duì)客戶程序公開,那么它就可能成為一種屬性。
6. cdata (讀作:c data ) c是character的縮寫。
.xml.sax.reader
/|\
org.xm.l.sax.xmlreader
/|\
org.apche.xerces.parsers.saxparser
2.webservice
2.1 webservice的基本概念
webservice是一種可以接收從internet或者intranet上的其它系統(tǒng)中傳遞過來的請(qǐng)求,輕量級(jí)的獨(dú)立的通訊技術(shù)。
這種技術(shù)允許網(wǎng)絡(luò)上的所有系統(tǒng)進(jìn)行交互。隨著技術(shù)的發(fā)展,一個(gè)web服務(wù)可以包含額外的指定功能并且可以在多個(gè)b2b應(yīng)用中協(xié)作通訊。
web服務(wù)可以理解請(qǐng)求中上下文的關(guān)系,并且在每一個(gè)特定的情況下產(chǎn)生動(dòng)態(tài)的結(jié)果。這些服務(wù)會(huì)根據(jù)用戶的身份,地點(diǎn)以及產(chǎn)生請(qǐng)求的原因來改變不同的處理,用以產(chǎn)生一個(gè)唯一的,定制的方案。這種協(xié)作機(jī)制對(duì)那些只對(duì)最終結(jié)果有興趣的用戶來說,是完全透明的。
uddi
在用戶能夠調(diào)用web服務(wù)之前,必須確定這個(gè)服務(wù)內(nèi)包含哪些商務(wù)方法,找到被調(diào)用的接口定義,還要在服務(wù)端來編制軟件。所以,我們需要一種方法來發(fā)布我們的web服務(wù)。
uddi (universal description, discovery, and integration) 是一個(gè)主要針對(duì)web服務(wù)供應(yīng)商和使用者的新項(xiàng)目。uddi 項(xiàng)目中的成員可以通過uddi business registry (ubr) 來操作web服務(wù)的調(diào)用,ubr是一個(gè)全球性的服務(wù)。
web服務(wù)供應(yīng)商可以在ubr中描述并且注冊(cè)他們的服務(wù)。
用戶可以在ubr中查找并定位那些他們需要的服務(wù)。
uddi是一種根據(jù)描述文檔來引導(dǎo)系統(tǒng)查找相應(yīng)服務(wù)的機(jī)制。
uddi包含標(biāo)準(zhǔn)的“白皮書”類型的商業(yè)查詢方式,
“黃皮書”類型的局部查找,以及
“綠皮書”類型的服務(wù)類型查找。
uddi利用soap消息機(jī)制(標(biāo)準(zhǔn)的xml/http)來發(fā)布,編輯,瀏覽以及查找注冊(cè)信息。它采用xml格式來封裝各種不同類型的數(shù)據(jù),并且發(fā)送到注冊(cè)中心或者由注冊(cè)中心來返回需要的數(shù)據(jù)。
wsdl
對(duì)于商業(yè)用戶來說,要找到一個(gè)自己需要使用的服務(wù),他必須知道如何來調(diào)用。
wsdl (web services description language) 規(guī)范是一個(gè)描述接口,語(yǔ)義以及web服務(wù)為了響應(yīng)請(qǐng)求需要經(jīng)常處理的工作的xml文檔。這將使簡(jiǎn)單地服務(wù)方便,快速地被描述和記錄。
以下是一個(gè)wsdl的樣例:
<?xml version="1.0"?>;
<definitions name="stockquote"
;