浏览器向服务器的请求(浏览器将数据发送给服务器时,数据存放的地方)
 请求方式:GET和POST
* GET:发送的数据,追加在请求的URL之上
* POST:发送的数据在HTTP请求体中
 浏览器发送数据
* 表单form,
* method属性:指定的请求方式
* action属性:接收数据的程序路径
 服务器获得浏览器发送的数据
* 获得单个数据
* request.getParameter("username");
* 获得一组数据
* request.getParameterValues("love");
* 处理中文乱码
* request.setCharacterEncoding("UTF-8");
* 注意:
* 此方法只对POST请求有效,GET需要单独处理
* 需要放置在获得数据之前,建议放在第一个行

获得一个数组内的数据

public class GetDataRequestServlet2 extends HttpServlet {

    public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
} public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8"); //获得表单提交的所有的数据
//获得用户名信息
String username = request.getParameter("username");
System.out.println("name: " + username);
//获得用户密码
String password = request.getParameter("userpassword");
System.out.println("pwd: " + password);
//获得性别
String sex = request.getParameter("sex");
System.out.println("sex: " + sex); //获得爱好,存在多个选择
// String love = request.getParameter("love");
// System.out.println("love : " + love);
String[] loves = request.getParameterValues("love");
//System.out.println(loves); //[Ljava.lang.String;@9260ee
String loveStr = Arrays.toString(loves);
System.out.println(loveStr); String error = request.getParameter("error");
System.out.println("error : " + error); } }r

request 处理中文

 public class GetCNDataRequestServlet extends HttpServlet {

     public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//确定请求编码
//request.setCharacterEncoding("UTF-8");
System.out.println("get"); //get请求处理提交数据中的 中文
String username = request.getParameter("username");
System.out.println(username);
//解码操作
String u = URLDecoder.decode(username, "GBK");
System.out.println(u); String str = new String(username.getBytes("ISO-8859-1"),"UTF-8");
System.out.println("**** " + str); //获得用户get请求提交的数据
String query = request.getQueryString();
System.out.println(query);
//解码
String q = URLDecoder.decode(query, "UTF-8");
System.out.println(q); //提交后url中的内容:getCNDataRequestServlet?username=%E4%B8%AD%E6%96%87
} public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//需要通知tomcat,用户提交的数据的字符集UTF-8
request.setCharacterEncoding("UTF-8"); System.out.println("post");
String username = request.getParameter("username");
System.out.println(username); } }

request处理中文就不要用get方式处理,因为很麻烦!!

ServletRequest的一些知识点的更多相关文章

  1. Servlet&JSP中的知识点

    先sun提出的是Servlet体系,这个体系使得使用JAVA的程序员也能开发基于B/S架构的WEB应用程序,使用Servlet类将HTTP请求和响应封装在标准JAVA类中来实现各种WEB应用方案.随着 ...

  2. 剑指Offer——知识点储备-J2EE基础

    剑指Offer--知识点储备-J2EE基础 9.2 jdk 1.8的新特性(核心是Lambda 表达式) 参考链接:http://www.bubuko.com/infodetail-690646.ht ...

  3. Java 面试知识点解析(七)——Web篇

    前言: 在遨游了一番 Java Web 的世界之后,发现了自己的一些缺失,所以就着一篇深度好文:知名互联网公司校招 Java 开发岗面试知识点解析 ,来好好的对 Java 知识点进行复习和学习一番,大 ...

  4. Java面试知识点总结及解析

    声明:有人说, 有些面试题很变态,个人认为其实是因为我们基础不扎实或者没有深入.本篇文章来自一位很资深的前辈对于最近java面试题目所做的总结归纳,有170道题目 ,知识面很广 ,而且这位前辈对于每个 ...

  5. Elementui实战知识点随记

    1. Elementui实战知识点随记 1.1. 表单验证 对于复杂数据,类似于对象里面包含数组,每个数组又包含多个对象,表单验证我查看了网上很多资料都说Elementui不支持,实际上,经过我官网的 ...

  6. web后台知识点整理

    五.JEE 适用于创建server端的大型的软件服务系统 1. JEE : JAVA  PLATFORM  ENTERPRISE  DEDITON 2.是一个规范集.技术集.框架集(API集) 一种技 ...

  7. ASP.NET Core 中的那些认证中间件及一些重要知识点

    前言 在读这篇文章之间,建议先看一下我的 ASP.NET Core 之 Identity 入门系列(一,二,三)奠定一下基础. 有关于 Authentication 的知识太广,所以本篇介绍几个在 A ...

  8. ASP.NET MVC开发:Web项目开发必备知识点

    最近加班加点完成一个Web项目,使用Asp.net MVC开发.很久以前接触的Asp.net开发还是Aspx形式,什么Razor引擎,什么MVC还是这次开发才明白,可以算是新手. 对新手而言,那进行A ...

  9. UWP开发必备以及常用知识点总结

    一直在学UWP,一直在写Code,自己到达了什么水平?还有多少东西需要学习才能独挡一面?我想对刚接触UWP的开发者都有这种困惑,偶尔停下来总结分析一下还是很有收获的! 以下内容是自己开发中经常遇到的一 ...

随机推荐

  1. Ubuntu虚拟机可以上网,可以ping网络,但是无法update和install,报连接不上服务器的错误解决方案:

    http://askubuntu.com/questions/711889/err-apt-get-update-on-ubuntu-14-04即使给Ubuntu配置了代理,terminal能ping ...

  2. The ways to kill Oracle session

    As we all known ,its the normal way  to use the SQL  'alter system kill 'sid,serial#'' to kill a ses ...

  3. 从入门到放弃,.net构建博客系统(二):依赖注入

    文章目录:<从入门到放弃,.net构建博客系统> 从入门到放弃,.net构建博客系统(一):系统构建 从入门到放弃,.net构建博客系统(二):依赖注入 上一篇中有讲到项目启动时会进行io ...

  4. jmeter - 定时器

    jmeter提供了很多元件,帮助我们更好的完成各种场景的性能测试,其中,定时器(timer)是很重要的一个元件,最新的3.0版本jemter提供了9种定时器(之前6种),下面一一介绍: 一.定时器的作 ...

  5. 【NO.10】Jmeter - 一个完整的录制脚本的过程

    上1篇介绍了"使用Jmeter对一个接口地址或者一个页面地址执行N次请求",也就是你自己干了一件从"零"开始的事情. 那么这1篇介绍"如何使用Jmeter录制'访问一个接口地址或者一个页面地址'的脚本 ...

  6. WebAPi接口安全之公钥私钥加密

    WebAPi使用公钥私钥加密介绍和使用 随着各种设备的兴起,WebApi作为服务也越来越流行.而在无任何保护措施的情况下接口完全暴露在外面,将导致被恶意请求.最近项目的项目中由于提供给APP的接口未对 ...

  7. winform 自定义控件的使用

    c#的自定义控件还是很方便的,至少相对于c++而言. 1,当然是建立一个windows 窗体空间库,我这里就是用vs 2015 ,工程名MyControl 第二步.在自定义空间窗体内,拖放这样一组空间 ...

  8. Android 5.1.1在外置SD卡中创建文件夹

    Android 4.4之后WRITE_MEDIA_STORAGE 权限仅提供给系统应用,不再授予第三方App,WRITE_EXTERNAL_STORAGE 权限,仅仅用于授权用户写 primary e ...

  9. CSS基础语法

    一.CSS常用选择器 前言: 页面中,所有的CSS代码,需要写入到<style></style>标签中. style标签的type属性应该选择"text/css&qu ...

  10. 关于C#的学习心得体会

    1·多看多写 多看网上成熟的demo,养成一个良好的代码编写习惯,将终生受益 2·多编多敲 看了代码,理解demo中的思路,灵活运用到自己的代码中,这样不仅了解了别人的代码,同时还了解了代码的执行过程 ...