码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • java服务器端开发-servlet:202、Servlet执行过程介绍:get请求与post请求、编码相关等


    声明:本教程不收取任何费用,欢迎转载,尊重作者劳动成果,不得用于商业用途,侵权必究!!!

    文章目录

    4、get请求与post请求

    (1)哪一些情况下,浏览器会发送get请求?

    (2)哪一些情况下,浏览器会发送post请求?

    (3)get请求的特点

    (4)post请求的特点

    5、如何获得请求参数值?

    6、编码相关的问题

    (1)servlet如何输出中文?

    a,乱码问题产生的原因

    b,解决方式

    (2)表单有中文参数,如何处理?

    a,乱码问题产生的原因

    b,解决方式:

    7、常识: 编码、解码、unicode编码

    8、练习:

    9、初学-注意点:


     

    4、get请求与post请求

    (1)哪一些情况下,浏览器会发送get请求?

    a,直接在浏览器地址栏输入某个地址。

    b,点击链接

    c,表单默认的提交方式

    (2)哪一些情况下,浏览器会发送post请求?

    a,设置表单method="post"。

    (3)get请求的特点

    a,请求参数会添加到请求资源路径的后面,只能添加

    少量的参数(因为请求行只有一行,大约只能存放2K

    左右的数据)。

    b,请求参数会显示在浏览器地址栏(路由器会记录

    请求地址)。

    (4)post请求的特点

    a,请求参数添加到实体内容里面,可以添加大量的

    参数。

    b,相对安全,但是,post请求不会对请求参数进行

    加密处理(可以使用https协议来保证数据安全)。

    5、如何获得请求参数值?

    1) String request.getParameter(String paramName);

    注意:如果paraName对应的值不存在,返回null。

    2) String[] request.getParameterValues(String paramName);

    当有多个参数名相同的时候,用该方法。

    6、编码相关的问题

    (1)servlet如何输出中文?

    a,乱码问题产生的原因

    默认情况下,out.println会使用"iso-8859-1"

    来进行编码。

    b,解决方式

    response.setContentType("text/html;charset=utf-8");

    注意,编码格式只要支持中文即可,比如,还可以设置为 gbk。

    这行代码的作用有两个:

    作用1:生成一个消息头(content-type),告诉

    浏览器,服务器返回的数据类型和编码格式

    作用2:也设置了out.println在输出时使用的编码格式。

    (2)表单有中文参数,如何处理?

    注意:

    这里说的是表单有中文参数,表单post/get提交方式的编码处理问题。

    初学者容易,直接写一个类似带中文的地址,在浏览器上进行测试,如

    http://localhost:8080/web02/hello?name=yyh_帅气华

    这样就不对了,说的不是一回事。

    a,乱码问题产生的原因

    当表单提交时,浏览器会对表单中的中文使用

    浏览器打开表单所在的页面时的编码格式进行编码。

    b,解决方式:

    方式一:

    step1,要保证表单所在的页面按照指定的编码格式打开。

    content="text/html;charset=utf-8">

    step2,让服务器按照指定的编码格式进行解码。

     request.setCharacterEncoding("utf-8");

    只对post请求有效。

    方式二:

    step1,同上。

    step2,

    name = new String(

    name.getBytes("iso-8859-1"),"utf-8");

    7、常识: 编码、解码、unicode编码

    a,java语言在内存当中以unicode编码格式(字符集)

    来保存一个字符。

    b,编码:将unicode编码格式对应的字节数组转换成

    某种本地编码格式(gbk,utf-8,gb2312)对应的字节

    数组。

    c,解码:将某种本地编码格式对应的字节数组转换成

    unicode编码格式对应的字节数组。

    8、练习:

    9、初学-注意点:

    1. 修改Servlet里面代码,无需重启tomact,但要重新部署
    2. 修改项目名:项目名,Properties,MyEclipse,Web,Web Context-root,“/当前项目名”
    3. 测试地址,多在浏览器上尝试。不要在MyEclipse上
    4. Open With,System Editor,即会打开“光影看图”等软件【方便查看编辑、复制粘贴】
    5. Web项目中:包名里面有汉字和下划线,并没有报错

  • 相关阅读:
    Python | GUI | Tkinter - 2. 组件使用
    RuntimeError: size of dimension does not match previous size, operand 1, dim 1
    华为OD机考:0030-0031-n*n数组中二进制的最大数、整数的连续自然数之和
    GPTS全网刷屏!定制增长速度指数增长
    如何给Nginx配置访问IP白名单
    2 OpenCV实现的F矩阵+RANSAC原理与实践
    Linux下安装navicat
    如何将 Python 运用到实际的测试工作中
    如何为 Kubernetes 监控安装 Pixie
    道可云元宇宙每日资讯|上海多个热门元宇宙文旅项目迎来消费高峰
  • 原文地址:https://blog.csdn.net/YuDBL/article/details/126615326
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号