servlet接收请求和产生响应
servlet执行过程:
- 浏览器向tomcat发出GET请求(或者POST请求)
- 获得URL的项目名,从tomcat下的webapss下找到对应文件夹
- 根据URL中servlet的url-pattern,从web.xml找到servlet-name,找到servlet-class(被访问的servlet的类名)
- 创建出servlet类对象;请求对象(HttpServletRequest)和响应对象(HttpServletResponse)
- tomcat先调用servlet对象中的init()方法(servlet第一次被访问)
- 调用servlet的service方法;servlet.service(req,resp);service方法根据请求类型(本例为GET请求)调用doGet方法
- 服务器将响应结果返回给浏览器 此时 如果浏览器发出第二次请求
- tomcat会直接根据url-pattern,找到servlet对象,调用service方法
HTTP的GET 和 POST方法:
- GET:获取URI指定的信息。如果URI指定的是文件,则返回文件的内容;如果URI指定的是服务器程序,则返回该程序的输出数据。
- POST:从客户端向服务器发送数据,一般用于发送表单中填写的数据等情况。
接受参数的方法:
- getParameter():您可以调用 request.getParameter() 方法来获取表单参数的值。
- getParameterValues():如果参数出现一次以上,则调用该方法,并返回多个值,例如复选框。
- getParameterNames():如果您想要得到当前请求中的所有参数的完整列表,则调用该方法。
读取所有表单的参数:
Enumeration paramNames = request.getParameterNames();
while(paramNames.hasMoreElements()) {
String paramName = (String)paramNames.nextElement();
out.print(paramName);
String[] paramValues =
request.getParameterValues(paramName);
// 读取单个值的数据
if (paramValues.length == 1) {
String paramValue = paramValues[0];
out.println(paramValue);
}
}