一路拾遺
Collect By Finding All The Way ......
BlogJava
首頁
新隨筆
新文章
聯(lián)系
聚合
管理
posts - 81,comments - 41,trackbacks - 0
<
2009年12月
>
日
一
二
三
四
五
六
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
我的博客開張啦!歡迎大家多多來踩!
常用鏈接
我的隨筆
我的評(píng)論
我的參與
最新評(píng)論
留言簿
(5)
給我留言
查看公開留言
查看私人留言
隨筆檔案
2010年9月 (1)
2010年6月 (2)
2010年5月 (5)
2009年12月 (4)
2009年11月 (3)
2009年10月 (2)
2009年8月 (2)
2009年7月 (4)
2009年6月 (5)
2009年5月 (1)
2009年4月 (2)
2008年12月 (2)
2008年11月 (1)
2008年10月 (1)
2008年9月 (4)
2008年8月 (12)
2008年7月 (30)
文章檔案
2008年12月 (1)
相冊(cè)
畢業(yè)照
搜索
積分與排名
積分 - 64478
排名 - 823
最新評(píng)論
1.?re: myeclipse開發(fā)hibernate應(yīng)用程序示例[未登錄]
真的好好...
--云
2.?re: myeclipse開發(fā)hibernate應(yīng)用程序示例
做得很認(rèn)真,頂一個(gè)
--~!
3.?re: myeclipse開發(fā)hibernate應(yīng)用程序示例[未登錄]
not bad
--1
4.?re: myeclipse開發(fā)hibernate應(yīng)用程序示例
類名一定要大寫,hibernate版本要小于4才行!?。。。?!
--第三方
5.?re: myeclipse開發(fā)hibernate應(yīng)用程序示例
有錯(cuò)誤啊
--第三方
閱讀排行榜
1.?myeclipse開發(fā)hibernate應(yīng)用程序示例(15649)
2.?使用AXIS調(diào)用WSDL描述的Web服務(wù)(9685)
3.?使用AXIS調(diào)用WSDL描述的Web服務(wù)(續(xù))(6045)
4.?基于RemoteObject方式的Java-Flex交互(USING LCDS)(2680)
5.?Java WebService注冊(cè)中心JUDDI配置方法(2198)
評(píng)論排行榜
1.?myeclipse開發(fā)hibernate應(yīng)用程序示例(16)
2.?使用UDDI4J連接JUDDI(10)
3.?使用AXIS調(diào)用WSDL描述的Web服務(wù)(續(xù))(5)
4.?使用AXIS調(diào)用WSDL描述的Web服務(wù)(3)
5.?找實(shí)習(xí)的傷心事(2)
AJAX技術(shù)初探
一、連接的建立
<
script type
=
"
text/javascript
"
>
var
request;
window.onload
=
function
()
{
listApi();
}
function
createRequest()
{
try
{
request
=
new
XMLHttpRequest();
}
catch
(trymicrosoft)
{
try
{
request
=
new
ActiveXObject(
"
Msxml2.XMLHTTP
"
);
}
catch
(othermicrosoft)
{
try
{
request
=
new
ActiveXObject(
"
Microsoft.XMLHTTP
"
);
}
catch
(failed)
{
request
=
false
;
}
}
}
if
(
!
request)
alert(
"
Error initializing XMLHttpRequest!
"
);
}
二、服務(wù)器端Servlet
這是doGet方法,即將參數(shù)寫在調(diào)用串中。
public
void
doGet(HttpServletRequest request, HttpServletResponse response)
throws
ServletException, IOException
{
response.setContentType(
"
text/xml
"
);
response.setHeader(
"
Cache-Control
"
,
"
no-cache
"
);
request.setCharacterEncoding(
"
GBK
"
);
response.setCharacterEncoding(
"
UTF-8
"
);
int
restMethodId
=
Integer.parseInt(request.getParameter(
"
restMethodId
"
));
String xml_start
=
"
<methodDetail>
"
;
String xml_end
=
"
</methodDetail>
"
;
StringBuilder xml
=
new
StringBuilder();
xml.append(xml_start);
RestDao restDao
=
new
RestDao();
RestMethod restMethod
=
restDao.getRestMethod(restMethodId);
xml.append(
"
<name>
"
);
xml.append(zhuanYi(restMethod.getRestMethodName()));
xml.append(
"
</name>
"
);
xml.append(xml_end);
String xmlString
=
xml.toString();
xmlString
=
xmlString.replace(
"
"
,
"
"
);
xmlString
=
xmlString.replace(
"
&
"
,
"
&
"
);
response.getWriter().write(xmlString);
}
三、頁面發(fā)送請(qǐng)求
這里調(diào)用的Servlet的Get調(diào)用,即調(diào)用doGet方法。這種方式適合于參數(shù)是簡(jiǎn)單數(shù)據(jù),這樣可以把參數(shù)卸載調(diào)用url中。
對(duì)于參數(shù)是復(fù)雜的數(shù)據(jù)對(duì)象時(shí),應(yīng)該調(diào)用doPost方法,即在調(diào)用串中不包含調(diào)用參數(shù),而是把調(diào)用參數(shù)寫在request.send(參數(shù)對(duì)象)中,doGet調(diào)用時(shí)此處為null。
function
getMethodDetail(methodId)
{
var
id
=
methodId.substr(
6
);
var
url
=
"
servlet/getMethodDetail?restMethodId=
"
+
escape(id);
call(url);
}
function
call(url)
{
createRequest();
if
(request)
{
request.open(
"
GET
"
,url,
true
);
request.onreadystatechange
=
callback;
request.send(
null
);
}
}
四、回調(diào)函數(shù)
function
callback()
{
if
(request.readyState
==
4
)
{
if
(request.status
==
200
)
{
parseMessage();
}
else
{
alert(
"
不能得到方法信息:
"
+
req.statusText);
}
}
}
五、解析返回XML、操作Dom以實(shí)現(xiàn)頁面動(dòng)態(tài)變化
//
解析返回xml的方法
function
parseMessage()
{
var
xmlDoc
=
request.responseXML.documentElement;
if
(xmlDoc.nodeName
==
"
apis
"
)
{
updateApi(xmlDoc);
}
else
if
(xmlDoc.nodeName
==
"
methods
"
)
{
updateMethod(xmlDoc);
}
else
if
(xmlDoc.nodeName
==
"
methodDetail
"
)
{
updateMethodDetail(xmlDoc);
}
else
{
alert(
"
NO Api
"
);
}
}
function
updateApi(xmlDoc)
{
var
apis
=
xmlDoc.getElementsByTagName(
"
api
"
);
var
apiul
=
document.getElementById(
"
apiul
"
);
equalCount(apis.length, apiul);
var
apiliArray
=
apiul.getElementsByTagName(
"
li
"
);
for
(
var
i
=
0
; i
<
apiliArray.length; i
++
)
{
apiliArray[i].onclick
=
function
()
{listMethod(
this
.id);}
var
apiId
=
apis[i].childNodes[
0
].firstChild.nodeValue;
apiliArray[i].id
=
"
api
"
+
apiId;
var
apiName
=
apis[i].childNodes[
1
].firstChild.nodeValue;
var
nameText
=
document.createTextNode(apiName);
apiliArray[i].removeChild(apiliArray[i].childNodes[
0
]);
apiliArray[i].appendChild(nameText);
}
}
posted on 2009-12-04 11:07
胖胖泡泡
閱讀(144)
評(píng)論(0)
編輯
收藏
新用戶注冊(cè)
刷新評(píng)論列表
只有注冊(cè)用戶
登錄
后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
Copyright ©2025 胖胖泡泡 Powered By
博客園
模板提供:
滬江博客
主站蜘蛛池模板:
香蕉视频在线观看免费国产婷婷
|
日韩免费无码视频一区二区三区
|
91免费资源网站入口
|
久久久亚洲欧洲日产国码是AV
|
日韩精品无码免费专区午夜
|
国产l精品国产亚洲区在线观看
|
国产男女爽爽爽免费视频
|
中文字幕亚洲天堂
|
久久免费视频观看
|
97se亚洲综合在线
|
免费国产成人高清在线观看网站
|
精品日韩99亚洲的在线发布
|
在线视频免费观看www动漫
|
日韩av无码成人无码免费
|
亚洲人6666成人观看
|
免费观看毛片视频
|
看一级毛片免费观看视频
|
亚洲国产精品无码久久久久久曰
|
国产在线观看免费av站
|
亚洲日本一区二区
|
免费一本色道久久一区
|
国产精品亚洲一区二区三区
|
成人免费视频小说
|
国产精品亚洲综合一区在线观看
|
亚洲国产综合无码一区二区二三区
|
窝窝影视午夜看片免费
|
亚洲AV永久无码精品
|
日本阿v免费费视频完整版
|
国产成人亚洲综合在线
|
久久青青成人亚洲精品
|
久久久久久99av无码免费网站
|
日本亚洲高清乱码中文在线观看
|
中文字幕日韩亚洲
|
在线观看日本免费a∨视频
|
亚洲av纯肉无码精品动漫
|
国产成人精品日本亚洲
|
无人在线观看完整免费版视频
|
日产久久强奸免费的看
|
亚洲精品综合久久中文字幕
|
日本免费v片一二三区
|
香蕉免费一区二区三区
|