Javaweb基礎(chǔ)入門requse原理與使用
request對(duì)象是什么?
Request對(duì)象的作用是與客戶端交互,收集客戶端的Form、Cookies、超鏈接,或者收集服務(wù)器端的環(huán)境變量。request對(duì)象是從客戶端向服務(wù)器發(fā)出請(qǐng)求,包括用戶提交的信息以及客戶端的一些信息。客戶端可通過(guò)HTML表單或在網(wǎng)頁(yè)地址后面提供參數(shù)的方法提交數(shù)據(jù),然后服務(wù)器通過(guò)request對(duì)象的相關(guān)方法來(lái)獲取這些數(shù)據(jù)。request的各種方法主要用來(lái)處理客戶端瀏覽器提交的請(qǐng)求中的各項(xiàng)參數(shù)和選項(xiàng)。
requse接收表單請(qǐng)求數(shù)據(jù):
Request對(duì)象接收表單請(qǐng)求參數(shù)
action="/demo16_war//helloo,一點(diǎn)擊,表單提交,網(wǎng)址就跳轉(zhuǎn)這個(gè)網(wǎng)址:http://localhost:8080/demo16_war//helloo
這個(gè)網(wǎng)址是:創(chuàng)建HelloSerrvlet3類的網(wǎng)址。
,就執(zhí)行HelloSerrvlet3類的方法:doget(){},
doget(){},里面有:
String username=req.getParameter(“username”);//
req.getParameter(“username”):會(huì)在html索引
name="username"的元素獲取它的value值
用戶名:<input type="text" name="username"/></br>
//req.getParameter("username"):能獲取我們輸入的value值
性別:<input type="radio" name="sex" value="man"/>男<input type="radio" name="sex" value="woman"/>女</br>
//req.getParameter("sex");獲取你選擇的元素value值
愛(ài)好:<input type="checkbox" name="hobby" value="baskeball"/>籃球
<input type="checkbox" name="hobby" value="football"/>足球
<input type="checkbox" name="hobby" value="volleyball"/>排球</br>
//多選框:name="hobby",一樣,獲取集合
//String [] hoppy=req.getParameterValues("hobby");
再通過(guò):Arrays.toString(hoppy)輸出集合。toString:重寫
創(chuàng)建一個(gè):dom4.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<h1>requst接收表單參數(shù)</h1>
<form action="/demo16_war//helloo" method="get">
用戶名:<input type="text" name="username"/></br>
密碼:<input type="text" name="password"/></br>
性別:<input type="radio" name="sex" value="man"/>男<input type="radio" name="sex" value="woman"/>女</br>
籍貫:<select type="checkbox" name="city" >
<option value="bejing">北京市</option>
<option value="shanghai">上海市</option>
<option value="shenzhen">深圳市</option>
</select></br>
愛(ài)好:<input type="checkbox" name="hobby" value="baskeball"/>籃球
<input type="checkbox" name="hobby" value="football"/>足球
<input type="checkbox" name="hobby" value="volleyball"/>排球</br>
自我介紹:<textarea name="info" cols="8" rows="10"></textarea>
<input type="submit" value="提交">
</form>
</body>
</html>
再創(chuàng)建一個(gè):類
package com.example.demo16;
import javax.servlet.ServletConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Arrays;
import java.util.Enumeration;
public class HelloSerrvlet3 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//super.doGet(req, resp);
resp.getWriter().println("Successs!");
String username=req.getParameter("username");
String password=req.getParameter("password");
String sex=req.getParameter("sex");
String city=req.getParameter("city");//獲得你選擇的city
String [] hoppy=req.getParameterValues("hobby");//獲得的是:多個(gè)數(shù)據(jù),數(shù)組
String info=req.getParameter("info");
System.out.println("用戶名:"+username+" 密碼:"+password);
System.out.println("性別:"+sex);
System.out.println("籍貫:"+city);
System.out.println("愛(ài)好:"+ Arrays.toString(hoppy));//toString,重寫
System.out.println("自我介紹:"+info);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
super.doPost(req, resp);
}
}
再加一個(gè):xml配置
<servlet>
<servlet-name>demo3</servlet-name>
<servlet-class>com.example.demo16.HelloSerrvlet3</servlet-class>
<init-param>
<param-name>username</param-name>
<param-value>root</param-value>
</init-param>
<init-param>
<param-name>password</param-name>
<param-value>abc</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>demo3</servlet-name>
<url-pattern>/helloo</url-pattern>
</servlet-mapping>
效果圖:


獲得了:
你在網(wǎng)頁(yè)輸入的:姓名,密碼,性別,等等,

如果你選擇method=“post”,(網(wǎng)址欄)就不會(huì)出現(xiàn):
?username=張三&password=13723458&sex=man&city=bejing&hobby=baskeball&info=我是張三
用集合方式:一起獲得表單數(shù)據(jù)
ap<String,String[]> map=req.getParameterMap();
Map<String,String[]> map=req.getParameterMap();
for(String key:map.keySet()){
String[] value=map.get(key);//
key: 獲得了input前面的內(nèi)容
//用戶名,密碼,籍貫,愛(ài)好
// value:獲得input的value值
System.out.println(key+" " +Arrays.toString(value));
}
效果:

到此這篇關(guān)于Javaweb基礎(chǔ)入門requse原理與使用的文章就介紹到這了,更多相關(guān)JavaWeb request內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java Morris遍歷算法及其在二叉樹(shù)中的應(yīng)用
Morris遍歷是一種基于線索二叉樹(shù)的遍歷算法,可以在不使用棧或遞歸的情況下,實(shí)現(xiàn)二叉樹(shù)的前序、中序和后序遍歷。該算法利用二叉樹(shù)中的空指針或線索指針,將遍歷序列嵌入到原二叉樹(shù)中,實(shí)現(xiàn)了常數(shù)級(jí)別的空間復(fù)雜度,適用于對(duì)空間要求較高的場(chǎng)景2023-04-04
MyBatis-Plus自動(dòng)化填充的踩坑記錄及解決
這篇文章主要介紹了MyBatis-Plus自動(dòng)化填充的踩坑記錄及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03
如何通過(guò)自定義spring?invalidator注解校驗(yàn)數(shù)據(jù)合法性
這篇文章主要介紹了如何通過(guò)自定義spring?invalidator注解校驗(yàn)數(shù)據(jù)合法性,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07
eclipse部署tomcat服務(wù)器無(wú)法啟動(dòng)問(wèn)題的解決方法
這篇文章主要為大家詳細(xì)介紹了eclipse部署tomcat服務(wù)器無(wú)法啟動(dòng)問(wèn)題的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-03-03
在SpringBoot項(xiàng)目中的使用Swagger的方法示例
這篇文章主要介紹了在SpringBoot項(xiàng)目中的使用Swagger的方法示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-05-05
SpringBoot MyBatis簡(jiǎn)單快速入門例子
MyBatis 是一款優(yōu)秀的持久層框架,它支持自定義 SQL、存儲(chǔ)過(guò)程以及高級(jí)映射。這篇文章主要介紹了SpringBoot MyBatis快速入門-簡(jiǎn)單例子,需要的朋友可以參考下2021-07-07
MyBatis不用@Param傳遞多個(gè)參數(shù)的操作
這篇文章主要介紹了MyBatis不用@Param傳遞多個(gè)參數(shù)的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-02-02
java發(fā)起http請(qǐng)求獲取返回的Json對(duì)象方法
下面小編就為大家分享一篇java發(fā)起http請(qǐng)求獲取返回的Json對(duì)象方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-03-03

