一.ServletRequest

1.获取参数的方法(四种)

  > String getParameter(String name): 根据请求参数的名字, 返回参数值.
    若请求参数有多个值(例如 checkbox), 该方法只能获取到第一个提交的值.

  > String[] getParameterValues(String name): 根据请求参数的名字, 返回请求参数对应的字符串数组.

  > Enumeration getParameterNames(): 返回参数名对应的 Enumeration 对象,
  类似于 ServletConfig(或 ServletContext) 的 getInitParameterNames() 方法.

  > Map getParameterMap(): 返回请求参数的键值对: key: 参数名, value: 参数值, String 数组类型.

2.程序indexhtml

 <!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="login" method="post">
user: <input type="text" name="user"/>
password: <input type="password" name="password"/><br><br> interesting:
<input type="checkbox" name="interesting" value="reading"/>Reading
<input type="checkbox" name="interesting" value="game"/>Game
<input type="checkbox" name="interesting" value="party"/>Party
<input type="checkbox" name="interesting" value="shopping"/>Shopping
<input type="checkbox" name="interesting" value="sport"/>Sport
<input type="checkbox" name="interesting" value="tv"/>TV <input type="submit" value="Submit"/>
</form>
</body>
</html>

3.web.xml

 <?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
id="WebApp_ID" version="3.1">
<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>servlets.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
</web-app>

4.LoginServlet.java

 package servlets;

 import java.io.IOException;
import java.util.Arrays;
import java.util.Enumeration;
import java.util.Map; import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse; public class LoginServlet implements Servlet{
public void destroy() {}
public ServletConfig getServletConfig() {
return null;
}
public String getServletInfo() {
return null;
}
public void init(ServletConfig arg0) throws ServletException {}
public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException {
//getParameter
String name=request.getParameter("user");
System.out.println("user="+name);
System.out.println("========================="); //getParameterValues
String[] names=request.getParameterValues("interesting");
for(String inter:names) {
System.out.println("inter="+inter);
}
System.out.println("========================="); //getParameterNames
Enumeration<String> en=request.getParameterNames();
while(en.hasMoreElements()) {
String enName=en.nextElement();
System.out.println("enName="+enName);
}
System.out.println("========================="); //getParameterMap
Map<String,String[]> map=request.getParameterMap();
for(Map.Entry<String,String[]> entry : map.entrySet()) {
System.out.println(entry.getKey()+"="+Arrays.asList(entry.getValue()));
} } }

5.效果

  

6.获取请求的 URI

7.获取请求方式

8.若是一个 GET 请求, 获取请求参数对应的那个字符串, 即 ? 后的那个字符串.

9.获取请求的 Serlvet 的映射路径

10.java程序

 package servlets;

 import java.io.IOException;
import java.util.Arrays;
import java.util.Enumeration;
import java.util.Map; import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest; public class LoginServlet implements Servlet{
public void destroy() {}
public ServletConfig getServletConfig() {
return null;
}
public String getServletInfo() {
return null;
}
public void init(ServletConfig arg0) throws ServletException {}
public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException {
// //getParameter
// String name=request.getParameter("user");
// System.out.println("user="+name);
// System.out.println("=========================");
//
// //getParameterValues
// String[] names=request.getParameterValues("interesting");
// for(String inter:names) {
// System.out.println("inter="+inter);
// }
// System.out.println("=========================");
//
// //getParameterNames
// Enumeration<String> en=request.getParameterNames();
// while(en.hasMoreElements()) {
// String enName=en.nextElement();
// System.out.println("enName="+enName);
// }
// System.out.println("=========================");
//
// //getParameterMap
// Map<String,String[]> map=request.getParameterMap();
// for(Map.Entry<String,String[]> entry : map.entrySet()) {
// System.out.println(entry.getKey()+"="+Arrays.asList(entry.getValue()));
// } //HttpServletRequest(负责http的Servlet)
HttpServletRequest hsr=(HttpServletRequest) request; //getRequestURI
String requestUri=hsr.getRequestURI();
System.out.println("requestUri="+requestUri);
System.out.println("========================="); //getMethod
String method=hsr.getMethod();
System.out.println("method="+method);
System.out.println("========================="); //getQueryString
String queryString =hsr.getQueryString();
System.out.println("queryString="+queryString);
System.out.println("========================="); //getServletPath
String servletPath=hsr.getServletPath();
System.out.println("servletPath="+servletPath);
System.out.println("========================="); //
} }

11.效果

  

二:response

1.将字放到html里

 package servlets;

 import java.io.IOException;
import java.io.PrintWriter;
import java.util.Arrays;
import java.util.Enumeration;
import java.util.Map; import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest; public class LoginServlet implements Servlet{
public void destroy() {}
public ServletConfig getServletConfig() {
return null;
}
public String getServletInfo() {
return null;
}
public void init(ServletConfig arg0) throws ServletException {}
public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException {
// //getParameter
// String name=request.getParameter("user");
// System.out.println("user="+name);
// System.out.println("=========================");
//
// //getParameterValues
// String[] names=request.getParameterValues("interesting");
// for(String inter:names) {
// System.out.println("inter="+inter);
// }
// System.out.println("=========================");
//
// //getParameterNames
// Enumeration<String> en=request.getParameterNames();
// while(en.hasMoreElements()) {
// String enName=en.nextElement();
// System.out.println("enName="+enName);
// }
// System.out.println("=========================");
//
// //getParameterMap
// Map<String,String[]> map=request.getParameterMap();
// for(Map.Entry<String,String[]> entry : map.entrySet()) {
// System.out.println(entry.getKey()+"="+Arrays.asList(entry.getValue()));
// }
//******************************************************************//
// //HttpServletRequest(负责http的Servlet)
// HttpServletRequest hsr=(HttpServletRequest) request;
//
// //getRequestURI
// String requestUri=hsr.getRequestURI();
// System.out.println("requestUri="+requestUri);
// System.out.println("=========================");
//
// //getMethod
// String method=hsr.getMethod();
// System.out.println("method="+method);
// System.out.println("=========================");
//
// //getQueryString
// String queryString =hsr.getQueryString();
// System.out.println("queryString="+queryString);
// System.out.println("=========================");
//
// //getServletPath
// String servletPath=hsr.getServletPath();
// System.out.println("servletPath="+servletPath);
// System.out.println("=========================");
//******************************************************************//
//response
// response.setContentType("text/html");
// response.setContentType("text/msdoc");
PrintWriter out = response.getWriter();
out.println("helloworld...");
} }

2.效果

  

第一个web程序(ServletRequest , ServletResponse)的更多相关文章

  1. 使用MyEclipse开发第一个Web程序

    MyEclipse环境配置 首先,安装一个MyEclipse,然后进行一些相关的环境配置(Window->Preferences): 比如字体.Formatter等. 也可以从Eclipse中导 ...

  2. Servlet+JSP教程之:第一个Web程序

    我们知道当浏览器发送请求给服务器后,服务器会调用并执行对应的逻辑代码进行请求处理.逻辑代 码是由程序员自己编写然后放进服务器进行运行,其实就是Servlet程序. 第一个Web程序: 开发工具: My ...

  3. Servlet+JSP(三):第一个Web程序

    Servlet+JSP(三):第一个Web程序在学习了服务器并成功安装后,我们知道当浏览器发送请求给服务器后,服务器会调用并执行对应的逻辑代码进行请求处理.逻辑代 码是由程序员自己编写然后放进服务器进 ...

  4. 第一个web程序(web.xml , ServletConfig , ServletContext)

    一:第一个jsp程序 1.项目设计结构 2.新建Person.java package com.java.demo; public class Person { public void printSt ...

  5. Django的第一个web程序及深入学习

    本学习历程参照Practical Django Projects和http://djangobook.py3k.cn上翻译的内容进行 注:本例以本机加以说明: 根据Django的安装过程可知:在命令行 ...

  6. [Ruby on Rails系列]3、初试Rails:使用Rails开发第一个Web程序

    本系列前两部分已经介绍了如何配置Ruby on Rails开发环境,现在终于进入正题啦! Part1.开发前的准备 本次的主要任务是开发第一个Rails程序.需要特别指出的是,本次我选用了一个(Paa ...

  7. Asp.Net Core 学习教程1、初始.Net Core与VS Code 第一个web程序

    1..Net Core介绍 .NET Core是.NET Framework的新一代版本, 是微软开发的第一个具有跨平台(Windows.Macosx.Linux) 能力的应用程序开发框架,未来也将会 ...

  8. 一个web程序员的年终总结

    2017年年终总结(就是一个程序员的瞎叨叨): 从来到中科院到现在,很开心可以在这留下来.毕竟对于我来说,这里符合我对自己毕业后前两年的规划.我是一个很慢的人,特别是对于我想做好的事情,我会非常认真仔 ...

  9. 第一个web 程序(servlet 和 jsp )&

    开发工具是便于程序员的编写,真正运行的代码不是编写的代码,而是tomcat服务器中部署好的代码.tomcat 会根据请求自动调用对应的代码进行请求处理. 可能遇到的问题: 1. 没有classes文件 ...

随机推荐

  1. ASP.NET CORE API Swagger+IdentityServer4授权验证

    简介 本来不想写这篇博文,但在网上找到的文章博客都没有完整配置信息,所以这里记录下. 不了解IdentityServer4的可以看看我之前写的入门博文 Swagger 官方演示地址 源码地址 配置Id ...

  2. 【精选】Nginx负载均衡学习笔记(一)实现HTTP负载均衡和TCP负载均衡(官方和OpenResty两种负载配置)

    说明:很简单一个在HTTP模块中,而另外一个和HTTP 是并列的Stream模块(Nginx 1.9.0 支持) 一.两个模块的最简单配置如下 1.HTTP负载均衡: http { include m ...

  3. 用户管理_组管理_权限管理.ziw

    2017年1月10日, 星期二 用户管理_组管理_权限管理 用户管理: useradd, userdel, usermod, passwd, chsh, chfn, finger, id, chage ...

  4. python学习笔记2-dict

    常用的dict操作: d={'name':'suki', ', 'sex':'man', 'addr':'nanjing' } #字典取值方便,但是字典是没有顺序的,List有下标 print(d[' ...

  5. javascript 高度相关

    //scrollTop; var scrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop); ...

  6. 训练赛第三场A题 zoj 559

    题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2559 解题报告:比赛的时候的想法是可以确定至少有两对相切的圆,所 ...

  7. Spring4笔记3--Bean的装配

    Bean的装配: Bean 的装配,即 Bean 对象的创建.容器根据代码要求创建 Bean 对象后再传递给代码的过程,称为 Bean 的装配. 1. 创建Bean对象的方式: 1. 通过 getBe ...

  8. mini2440的程序下载

    mini2440拿到手有四天了,抱着很大的兴趣看韦东山老师的视频,但是因为电脑是win7 64bit的系统,dnw的驱动没有,经查询可以使用supervivi,就查找相关的资料.但是始终弄不好,后来使 ...

  9. 使用dork脚本来查询Google

    使用dork脚本来查询Google 了解Google Hacking数据库的第一步是了解所有典型的Google运算,就像机器级编程工程师必须了解计算机操作代码一样. 这些Google运算是Google ...

  10. wifi两种工作模式

    AP:即无线接入点,是一个无线网络的中心节点.通常使用的无线路由器就是一个AP,其它无线终端 可以通过AP相互连接. STA:即无线站点,是一个无线网络的终端.如笔记本电脑.PDA等. 1>工作 ...