javaWeb中的request對象
1.request對象是從客戶端想服務器發出請求,包括用戶提交的信息以及客戶端的信息.
2.request對象的常用方法:
主要用來處理客戶端瀏覽器提交的請求信息,以便作出相應處理.
setAttribute(String name,Object obj) //用於設置request中的屬性和屬性值
getAttribute(String name) //返回name指定的屬性值,若沒有指定則反回null.
removeAttribute(String name) //用於刪除請求中的一個屬性
getParameter(String name) //用於獲取客戶端發送給服務器的參數值
getParameter() // 用於獲取客戶端發送給服務器的所有參數值
getParameterValues(String name) //獲取指定參數的所以值
getCharacterEncoding() //返回請求中的字符編碼方式
3.訪問(獲取)請求參數
舉例1:
infoInput.jsp頁面關鍵代碼:
<form action="infoReceive.jsp" method="post">
姓名:<input type="text" name="rdName"><br/>
電話:<input type="text" name="phName"><br/>
<input type="submit" value="提交">
</form>
infoReceive.jsp頁面關鍵代碼:
<body>
<% String str1=request.getParameter("rdName"); //這裏的名稱必須要與提交頁面的名稱一樣
String str2=request.getParameter("phName");
%>
<font face="宋體" size=4 color=blue>
你輸入的信息爲:<br>
姓名:<%= str1%><br>
電話:<%= str2%><br>
</body>
注意:在提交頁面若是有輸入漢字,在接受頁面會出現亂碼,其解決方法是:
(1)修改infoReceive.jsp頁面,在getParameter() 前加上一行:
request.setCharterEncoding("UTF-8");
( 2 )在infoReceive.jsp頁面的表單屬性action,必須是“post”方法.
舉例2:
設計一個web程序,實現由提交頁面提交的兩個任意實數的和,並顯示求和的結果.
提交頁面-----input.jsp 的關鍵代碼:
<body>
<form action="infoReceive.jsp" method="post">
數據1:<input type="text" name="數據1><br/>
數據2:<input type="text" name="數據2"><br/>
<input type="submit" value="提交">
</form>
</body>
求和頁面------sum.jsp 的關鍵代碼:
<body>
<% String str1=request.getParameter("shuju1"); //這裏的名稱必須要與提交頁面的名稱一樣
String str2=request.getParameter("shuju2");
double s1=Double.parseDouble(str1);
double s2=Double.parseDouble(str2);
double s3=s1+s3;
request.setAttribute("str1",s1);
request.setAttribute("str2",s2); 保存3個屬性到request對象
request.setAttribute("str3",s3);
%><jsp:forward page="output.jsp"></jsp:forward>
</body>
顯示頁面---------output.jsp的關鍵代碼:
<body>
利用getAttribute 方法獲取提交的屬性值 <br>
<% Double a1=(Double)request.getAttribute("s1");
Double a2=(Double)request.getAttribute("s2");
Double a3=(Double)request.getAttribute("s3");
%> <%=a1%>+<%=a2%>=<%=a3%><br>
利用getparameter 方法獲取請求參數 <br>
<% String s1=request. getparameter("shuju1");
String s2=request. getparameter("shuju2");
%> <%=s1%>+<%=s2%>=<%=a3%><br>
</body>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.