zoukankan      html  css  js  c++  java
  • ServletRequest请求详解

    对于浏览器的请求

      ServletRequest有很多种请求,最主要的就是get请求和post请求

    get请求

      •get提交的数据会放在URL后,以?分割URL和传输数据,参数之间以&相连

      •get方法以明文传输,数据量少,不安全

      •效率高,浏览器默认请求方式是GET请求

      •对应的servlet方法是doGET

    post请求

      •post方法是把提交的数据放在HTTP包的body中

      •密文传递数据、数据量大、安全

      •效率没有get高

      •对应的servlet方法是doPost

    request请求对象

      对于request请求对象,我们通常通过getParameter根据表单组件名称获得提交数据

    Get样例

      现在我们自己来实现一个request应用——注册

      首先我们在web目录下创建一个register.html文件,写上get方法的表单,提交的数据是账号和密码,action写的是servlet的名称的url,那路径从哪里开始呢——路径应该是我们的项目,所以我们写上/My_Servlet_war_exploded/rs

      然后我们创建一个servlet类继承HttpServlet,重写doGet方法,用注解指定url路径,注意我们使用的是请求类的getParameter方法来获得请求的数据的

       现在我们重启tomcat服务器,就可以通过浏览器的url访问我们的register页面

       点注册之后我们就会向RegisterServlet进行一个Get请求

       回到idea我们可以看到RegisterServlet的doGet方法输出了内容

       至此一个简单的网页请求后台业务完成,nice~

    Post样例

      post请求只需把我们的method改成post

      然后我们的servlet重写doPost方法即可

       我们重启服务器,访问我们的register.html提交数据

       我们可以看到提交成功,但提交的数据乱码了

     Post方法解决乱码

      由于客户端是以UTF-8字符编码集将表单数据传递给服务端的,因此服务器也需要设置UTF-8字符编码接受。

      我们使用从ServletRequest接口继承而来的setCharacterEncoding方法设置字符集

       这样我们的数据就不会发生乱码了

      

  • 相关阅读:
    setCookie
    EF getCookie
    EF
    Dapper修改
    Dapper显示
    Dapper上传图片
    Dapper存储过程分页
    Azure Function(.Net Cor框架)读取配置文件
    .Net Core3.1中出现AssemblyInfo特性重复
    YAML配置文件 基础学习
  • 原文地址:https://www.cnblogs.com/qq2210446939/p/13991705.html
Copyright © 2011-2022 走看看