解決request.getParameter取值后的if判斷為NULL的問題
request.getParameter取值后if判斷為NULL
以下為我程序的一部分,Auto_space_time_ok.jsp文件從Auto_space_time.jsp獲取的值代碼,此處博主需要做一個(gè)判斷,當(dāng)danwei 等于“學(xué)校”字符串時(shí),將 zhuangtai的值賦值給zhengzhuang

開始時(shí),用語句判斷
if(danwei = "學(xué)校") zhengzhuang = zhuangtai;
結(jié)果獲取不到值,輸出語句為null。
System.out.print(zhengzhuang);
將判斷語句更改為
if( "學(xué)校".equals(danwei)) zhengzhuang = zhuangtai;
方可解決問題。
查明原因
此處我們比較的是數(shù)值,基本數(shù)據(jù)類型,即原始數(shù)據(jù)類型。byte,short,char,int,long,float,double,boolean,他們之間比較數(shù)值時(shí),可用直接用(==),而作為String,Integer,Date 這些復(fù)合型數(shù)據(jù)類型(類),比較數(shù)值時(shí)用.equals,此時(shí)(==)比較的是地址。
servlet中request.getParameter得到null的幾個(gè)可能
本文針對(duì)的是jsp中form表單提交后servlet獲取到null的情況
可能性一
jsp中需要輸入的input標(biāo)簽中沒設(shè)name屬性值
正確例如:
<input ?name="password" value="${user.password}" class="textinput" />因?yàn)楸韱翁峤缓?,如果想用servlet中request.Parameter()來獲取值,那么配套的是input中的name的值而不是id的
value對(duì)于這有沒有都是可以的。
可能性二
form中的action屬性跟Webservlet中的名不一致
可能性三
form表單的提交方式應(yīng)該是post而不是get(method屬性的值)
正確例如:
<form action="${pageContext.request.contextPath}/Modify" method="post" id="modifyForm">一般存在于servlet文件的開頭幾行的:
@WebServlet("/Modify")可能性四
負(fù)責(zé)表單提交的按鈕的問題
眾所周知(狗頭保命),當(dāng)你需要提交一份表單,你同時(shí)還需要一個(gè)“按鈕”
可能也有不用按鈕的,但是我目前所寫的都大抵是需要的。
當(dāng)你無法使用input的submit提交按鈕而是別的東西例如一個(gè)超鏈接時(shí),你若是在超鏈接的href里寫了和form的action中一樣的內(nèi)容,那恭喜,你大概率就會(huì)得到一個(gè)null。
像這樣:
<form action="${pageContext.request.contextPath}/Modify" method="post" id="modifyForm"><a href="${pageContext.request.contextPath}/ModifyUser?id=${user.id}" rel="external nofollow" >這其實(shí)也是我所遇到的問題,我是這樣解決的
<script>
function modify(){
?? ?document.getElementById("modifyForm").submit();
}
</script><a href="#" rel="external nofollow" onclick="modify()">
也就是寫了個(gè)js方法并在a中onclick調(diào)用,構(gòu)成當(dāng)點(diǎn)擊這個(gè)超鏈接時(shí)提交表單的功能。form不動(dòng)。然后便解決了。。
最近跟著上課做了個(gè)項(xiàng)目,其中出現(xiàn)了上述問題,雖然不是個(gè)大問題,但是花費(fèi)了較長時(shí)間解決,故寫此文,希望對(duì)你有所幫助。
若你沒有在這里找到解決方法,再去耐心的檢查代碼,可能就是哪個(gè)地方粗心寫錯(cuò)了罷了;不要放棄,不能讓如此小問題這個(gè)成為你以后的一道坎。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
java Lucene 中自定義排序的實(shí)現(xiàn)
使用Lucene來搜索內(nèi)容,搜索結(jié)果的顯示順序當(dāng)然是比較重要的.Lucene中Build-in的幾個(gè)排序定義在大多數(shù)情況下是不適合我們使用的.要適合自己的應(yīng)用程序的場(chǎng)景,就只能自定義排序功能,本節(jié)我們就來看看在Lucene中如何實(shí)現(xiàn)自定義排序功能.2008-12-12
運(yùn)用El表達(dá)式截取字符串/獲取list的長度實(shí)例
下面小編就為大家?guī)硪黄\(yùn)用El表達(dá)式截取字符串/獲取list的長度實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-02-02
JavaWeb實(shí)現(xiàn)圖形報(bào)表折線圖的方法
這篇文章主要介紹了JavaWeb實(shí)現(xiàn)圖形報(bào)表折線圖的方法,涉及JSP包的引用、圖形操作、配置文件設(shè)置及字符串操作技巧,需要的朋友可以參考下2016-06-06
在.jsp中非表單請(qǐng)求action的幾種方式總結(jié)
本文整理了3種非表單請(qǐng)求action,需要注意的是第二種:action名都是在sturts.xml中配置的名字,有需求的朋友可以參考下哈,希望對(duì)你有所幫助2013-04-04
Java Web項(xiàng)目中連接Access數(shù)據(jù)庫的配置方法
本文是對(duì)前幾天的“JDBC連接Access數(shù)據(jù)庫的幾種方式”這篇的升級(jí)。由于在做一些小項(xiàng)目的時(shí)候遇到的問題,因此才決定寫這篇博客的。昨天已經(jīng)將博客發(fā)布了,但是后來經(jīng)過一些驗(yàn)證有點(diǎn)問題,所以今天改了一下重新的發(fā)布了2013-05-05
Servlet+Jsp實(shí)現(xiàn)圖片或文件的上傳功能具體思路及代碼
web項(xiàng)目中的這一上傳功能,那么文件是如何從本地發(fā)送到服務(wù)器的呢,接下來為大家介紹下Servlet+Jsp實(shí)現(xiàn)文件的上傳功能,感興趣的朋友可以參考下哈2013-04-04

