java struts2 ajax_在struts2的Action中返回Ajax數據

author:z_xiaofei168

如何在struts2的action中返回數據(普通字符串、圖片)給ajax核心中的XMLHttpRequest對象。

今天下午做項目,就是用戶注冊是時候,登錄名是否唯一,我用的ajax驗證,但怎么也不返回我想要的數據,糾結了老半天,后來百度了一下,response對象為空,寫上這行代碼就OK了,HttpServletResponse response = ServletActionContext.getResponse();當你輸入完登錄名之后把光標移到下面的時候。ajax就會通過異步交互實現頁面的局部刷新。從數據庫中能查到數據就返回一個苦的表情,如沒有則返回一個笑的表情。

下面和大家分享一下。

先看效果,下圖所示:

fc647ec4193479eb3b3a734b97002d65.bmp

public String checkLogin() throws Exception {

/** 獲取response對象 */

HttpServletResponse response = ServletActionContext.getResponse();

/** 獲取輸出out對象 */

PrintWriter out = response.getWriter();

Customers cus = customersServiceImpl.checkLogin(entity);

if (cus.getCname().equals(entity.getCname())) {

out.print("1111");

}else{

}

/** 這里返回的是null */

return null;

}

function $(id) {

return document.getElementById(id);

}

//getAjax請求

//創建XMLHttpRequest對象

function getXhr() {

var xhr;

try {

//IE瀏覽器

xhr = new ActiveXObject("Microsoft.XMLHTTP");

} catch (err) {

try {

//firefox opera 等其他瀏覽器

xhr = new XMLHttpRequest();

} catch (er) {

alert("您的瀏覽器不支持ajax技術的操作,請您升級.....");

}

}

return xhr;

}

function checkuser() {

var user = document.getElementById("cname").value;

//獲取xhr對象

var xhr = getXhr();

xhr.open("get","csdn/customers_checkLogin.action?entity.cname="+user,true);

xhr.send();

document.getElementById("spanUser").innerHTML = 'wait.gif';

xhr.onreadystatechange = function (){

if(xhr.readyState==4 && xhr.status==200){

if(xhr.responseText){

document.getElementById("spanUser").innerHTML = 'cry.png';

}else{

document.getElementById("spanUser").innerHTML = 'smile.png';

}

}

}

}

登錄名*

13

9

分享到:

18e900b8666ce6f233d25ec02f95ee59.png

72dd548719f0ace4d5f9bca64e1d7715.png

2011-06-02 18:04

瀏覽 10403

評論

17 樓

qingchenyuji

2012-02-25

您好:我是在SSH架構下使用ajax實現異步刷新,但是我在javaaction代碼中設置輸出內容時:只能輸出true或flase,換了其他變量或字符串,頁面的ajax就收不到action傳送來的數據,我用的不是servlet,用的時MVC三層架構。真心求教!

16 樓

make_miracles

2011-06-17

返回true或flase在客戶端設置圖片展示不行嗎,干嘛由后臺返回圖片。

15 樓

z_xiaofei168

2011-06-17

venus224 寫道

寫著玩玩可以,在項目中還是用json吧!

呵呵,恩恩,那絕對是必須的。

14 樓

venus224

2011-06-16

寫著玩玩可以,在項目中還是用json吧!

13 樓

z_xiaofei168

2011-06-14

liuningbo 寫道

看不懂啊看不懂,

神馬情況?

12 樓

liuningbo

2011-06-14

看不懂啊看不懂,

11 樓

z_xiaofei168

2011-06-07

QiuQiu0034 寫道

為什么不用struts2的json插件呢,方便多了

恩,我知道,但我就想用下ajax,不想用json。嘗試的做做。

10 樓

QiuQiu0034

2011-06-06

為什么不用struts2的json插件呢,方便多了

9 樓

redish

2011-06-06

佩服了,這個用法應該跟struts2沒有任何關系吧

8 樓

kjj

2011-06-04

你這樣用struts和用servlet有啥區別

7 樓

z_xiaofei168

2011-06-04

suhuanzheng7784877 寫道

希望能對你有幫助~

謝了,我看看

希望能對你有幫助~

http://suhuanzheng7784877.iteye.com/blog/890578

4 樓

z_xiaofei168

2011-06-03

Cross_Lee 寫道

html 代碼別用...[/java]

神馬意思?是那個寫代碼前,那個前面寫的嗎?java代碼或者是html之類的??如果是那個的話,我沒注意,寫錯了

3 樓

Cross_Lee

2011-06-03

html 代碼別用...[/java]

2 樓

z_xiaofei168

2011-06-03

vbvbxx 寫道

還是基礎不牢啊,偶也新手

966903dea4bcb507358d5dcce8b912e5.gif

呵呵,學的時間太長了,忘了,

46824d74e28d56e0d70bd4ffe8816f2d.gif

1 樓

vbvbxx

2011-06-03

還是基礎不牢啊,偶也新手

966903dea4bcb507358d5dcce8b912e5.gif

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/385901.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/385901.shtml
英文地址,請注明出處:http://en.pswp.cn/news/385901.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Nginx負載均衡策略有哪些?知識點總結+面試題解析

前言 看日期,今天都是4月了,這春招也差不多進入尾聲了。 近期任有不少朋友都在找工作,很多人開始抱怨,工作可真難找啊!身邊不少朋友問我咋搞呀,秋招都要結束了,工作還沒著落呢…額…這個…今年…

java bean jsp_JavaBean與Jsp

這一節我們總結一下JavaBean和Jsp的關系。1. JavaBeanjavaBean是一個遵循特定寫法的Java類,它通常具有如下特點:1)這個java類必須具有一個無參構造函數;2)屬性必須私有化;3)私有化的屬性必須通過public類型的方法暴露給其他程序&a…

P8級別的頂級“并發編程”寶典,最全指南

前言 前幾天我上班路上,和小區門口開車的師傅閑聊,發現他們雖然學歷不高,但掙錢的途徑不少,比如固定接送多位客戶,然后能通過朋友圈拓展新客戶,而且通過客戶口口相傳,也能不斷拉到生意&#xf…

java 追加寫入txt文件_ava如何追加寫入txt文件

(二)方法1public void method1() {FileWriter fw null;try {//如果文件存在,則追加內容;如果文件不存在,則創建文件File fnew File("E:\dd.txt");fw new FileWriter(f, true);} catch (IOException e) {e.printStackTrace();}Pri…

Redis宕機數據丟失解決方案,不吃透都對不起自己

前言 昨天,有個女孩子問我提高數據庫查詢性能有什么立竿見影的好方法? 這簡直是一道送分題,我自豪且略帶鄙夷的說,當然是加「索引」了。 她又不緊不慢的問,索引為什么就能提高查詢性能。 這還用問,索引…

c 加密 java解密錯誤_java解密出錯

展開全部你那個代碼少得東西太多,我左試右試,都是錯,也不知道你的初始32313133353236313431303231363533e78988e69d8331333332613762值都是什么。給你寫了一個加密解密的,希望對你有幫助。import java.security.NoSuchAlgorithmEx…

Redis成神之路電子版教程已問世,面試題+筆記+項目實戰

前言 我想對所有程序員說:除了看視頻、做項目來提高自身的技術之外,還有一種提升自己的專業技能就是:多!看!書!(本文內提到的書單筆者整理出了一份電子檔作為分享,文末有免費獲取方式…

java 中的event_Java中this與event有什么不同

Java中this與event有什么不同發布時間:2021-02-11 10:37:25來源:億速云閱讀:61作者:LeahJava中this與event有什么不同?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法&#xff…

Redis有幾種數據類型?文末領取面試資料

前言 其實前幾篇文章已經寫了好多有關于Spring源碼的文章,事實上,很多同學雖然一直在跟著閱讀、學習這些Spring的源碼教程,但是一直都很迷茫,這些Spring的源碼學習,似乎只是為了面試吹逼用,我大概問過一些…

java 多重屬性_最全面的44個Java 性能調優細節

我認為,代碼優化的最重要的作用應該是:避免未知的錯誤。在代碼上線運行的過程中,往往會出現很多我們意想不到的錯誤,因為線上環境和開發環境是非常不同的,錯誤定位到最后往往是一個非常小的原因。然而為了解決這個錯誤…

Redis靈魂14問?真香

前言 今日博主聽聞,現在很多培訓出來的應屆生薪資都趕上了摸爬滾打兩三年的朋友,講道理,這說不過去啊 作為同行來說,這個行業發展很快,技術更新很快,淘汰也很快,千萬不要再找借口了&#xff0…

java主流微服務框架_Spring Boot作為當下最流行的微服務開發框架,一名合格的Java開發者一定有所了解,...

Spring Boot作為當下最流行的微服務開發框架,一名合格的Java開發者一定有所了解,Spring Boot相對于傳統的SSM框架來說:springboot使用了特定的配置方式,開發人員不需要再定義樣板化的配置,簡化項目的初始構建springboo…

Redis面試復習大綱在手面試不慌,內含福利

前言 這幾年在Java工程師招聘時,會看到很多人的簡歷都寫著使用了Spring Cloud做微服務實現,使用Docker做自動化部署,并且也會把這些做為自己的亮點。而比較有趣的這其中以小公司出來的人為絕大多數,大的公司出來的人簡歷上倒是很…

java注解編程_Java注解編程原理

一、先了解以下4個元注解Documented具體來說是生成說明文檔時把類的解釋添加進去。Inherited 允許子類繼承父類中的注解Target 表示該注解用于什么地方,可能的值在枚舉類 ElemenetType 中public enum ElementType {TYPE, //給類(型)注解FIELD, //給字段注解&#x…

Redis面試復習大綱在手面試不慌,講的明明白白!

前言 面試時間將近兩個小時(期間等待二面面試官來面我的時候等了半個多小時)面試官問的東西很多,還挖了好幾個坑,一個技術點套著一個技術點的問,一定要做好萬全的準備。問了一些基本層面上的技術點都答出來了&#xf…

python sendline_python Pexpect模塊的使用

Pexpect簡介在講解Pexpect之前,我們需要先了解一下Expect這個腳本語言,它是由TCL語言實現的,主要用于人機交互式對話的自動化控制,可以用來完成ssh、ftp、telnet等命令行程序的自動化交互。Pexpect其實就是一個用Python語言實現的…

RocketMQ消息丟失場景及解決辦法,已拿offer入職

前言 當前我們都會說SpringBoot是Spring框架對“約定優先于配置理念的最佳實踐的產物,一個典型的SpringBoot應用本質上其實就是一個基于Spring框架的應用,而如果大家對Spring框架已經了如指掌,那么,在我們一步步揭開SpringBoot微…

java抓rtp包_Wireshark抓取RTP包,還原語音

最近在做基于SIP的VoIP通信研究,使用Wireshark軟件可以對網絡流量進行抓包。VoIP使用RTP協議對語音數據進行傳輸,語音載荷都封裝在RTP包里面。要對傳輸中的語音進行截獲和還原,需要通過Wireshark對RTP包進行分析和解碼。該過程如下&#xff1…

RocketMQ消費者是如何獲取消息的?轉瘋了!

前言 前兩天,我收到了螞蟻金服的offer,從朋友的內推開始面試到拿到最后offer經歷了4面技術、一面交叉面和一面HR面。經過了漫長的等待和幾次幾乎折磨的面試之后,終于拿到了offer。 第1章:Dubbo的簡史、后續的規劃和整體架構大圖 …

java if在內存中_java如何將對象暫存到內存中?

展開全部form表單提交文件,建議用62616964757a686964616fe59b9ee7ad9431333264623862smartupload上傳,暫存在web服務器目錄下,然后稍微一下下面的代碼,ftp上傳后,刪除暫存文件,okimport java.io.File;impor…