10 Servlet_02 资源跳转(主要是内部转发)与中文乱码问题
总的知识点:
1.小的知识点总结:
alt + shift + r 重命名快捷键(可以给包和类以及项目重命名)
有序列表 ol li 无序列表 ul
type 格式
text 是文本类型
password 是密码口令
submit 递交登陆 这三个都是固定格式
name赋名 value 赋名 placeholder 占位符(只显示,不占位置)
@WebServlet("/register")*///资源路径映射(注意斜杠一定要有)
eg:
<form action="login">
<!--输入框 input 行标签 不能设置宽与高,不独占一行
type 格式,(在这里是选择格式) text 是文本类型 password 是密码,口令 submit 递交登陆 这三个都是固定格式
name赋名 value 赋名 placeholder 占位符(只显示,不占位置)
-->
<input type="text" name="username" placeholder="用户名/邮箱/手机号"><br>
<input type="password" name="password" placeholder><br>
<input type="submit" value="登录" ><br>
<!--超链接 <a> 制定跳转的资源路径href -->
<a href="zuoye.html">忘记密码</a>
</form>
<form> 表单 录入数据,把数据传输给后端服务器
action:执行url动作 请求的资源路径
<input>标记是form表单标记中的一个高频使用的标记
input 标记中type=submit 表达的是 想把from表单中的所有数据打包成from 形式提交给后端服务器
<input> 标签规定了用户可以在其中输入数据的输入字段。
<input> 元素在 <form> 元素中使用,用来声明允许用户输入数据的 input 控件。
输入字段可通过多种方式改变,取决于 type 属性。
如果type=button 那么该按钮就是一个简单的普通按钮,具备鼠标点击的功能
这个是设置欢迎界面首页(在运行tomcat时第一个进入的页面)需要/和.html设置在web--> WEB-INF-->web.xml里面
<welcome-file-list>
welcome-file>/register.html</welcome-file>
</welcome-file-list>
2.资源跳转分为两种: 内部转发和重定项
资源跳转:
第一种:内部转发 属于服务器内部的动作,对于用户来说只请求了一次在服务器内部做了两次操作(服务A请求了服务B)对于用户来说并不知情所以在网址上 --- url并不会改变(地址不会发生改变)编码集UTF-8不管用(所以用GBK),
理解方式:客户端向错误后台发起请求但是后台自动跳转到正确后台并在正确后台发回响应
第二种:重定向 属于浏览器客户端的动作,对于用户来说请求了两次,服务器也给用户响应了两次,所以在网址上 URL会发生改变(地址发生了改变)
理解方式:客户端向错误后端发起请求,错误后端响应客户端并指向正确后端,然后客户端再次向正确后端发起请求,正确后端发起响应。
客户端信息:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form action="register">
<!--输入框信息-->
<input type="text" name="username" placeholder="用户名"><br>
<input type="text" name="phone" placeholder="手机号"><br>
<input type="text" name="email" placeholder="邮箱"><br>
<input type="password" name="password" placeholder="密码"><br>
<input type="submit" value="注册">
</form>
</body>
</html>
内部接收并响应反馈客户端:
@WebServlet("/register")
@Override
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
//提供用户注册服务 http (http请求 - http响应)
//请求:由浏览器客户端向后端服务器发起,有时会携带请求参数
//响应:由后台服务器端向客户端浏览器发起,有时也会携带相应数据
HttpServletRequest request = (HttpServletRequest) servletRequest;
HttpServletResponse response = (HttpServletResponse)servletResponse;
//设置编码字符集 防止中文乱码 ISO-8859-1 GB2312-->GBK(中国少数民族都有) UTF-8 Unicode
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
//接收客户端传输的参数值 ( request.getParameter("name属性值/参数名称"); )
String username = request.getParameter("username");//用户名
String phone = request.getParameter("phone");
String email = request.getParameter("emeil");
String password = request.getParameter("password");
//回传数据 把后端的数据传输到前段浏览器页面中
//h1-->h6 大标题---》小标题
response.getWriter().write("用户名"+username+"<br>"+//类似输出的意思
"手机号"+phone+"<br>"+
"邮箱"+email+"<br>"+
"密码"+password);
}
10 Servlet_02 资源跳转(主要是内部转发)与中文乱码问题的更多相关文章
- 11 Servlet_03 关键字总结 资源跳转:重定项 键值对 继承类 do-get do-post Request域 Context域 =空针解决方法
知识点总结: 1.java里的关键字: byte short int long 数据类型 (正整数)char 数据类型(单字符型)boolesn ture false 布尔类型float dou ...
- html页面跳转出现中文乱码
一般html的<meta charset="UTF-8">默认都是utf-8的编码格式,直接在网页中打开是正常的,但是有的时候在页面跳转时就会出现中文乱码问题,忘了参考 ...
- 背水一战 Windows 10 (11) - 资源: CustomResource, ResourceDictionary, 加载外部的 ResourceDictionary 文件
[源码下载] 背水一战 Windows 10 (11) - 资源: CustomResource, ResourceDictionary, 加载外部的 ResourceDictionary 文件 作者 ...
- 背水一战 Windows 10 (9) - 资源: 资源限定符概述, 资源限定符示例
[源码下载] 背水一战 Windows 10 (9) - 资源: 资源限定符概述, 资源限定符示例 作者:webabcd 介绍背水一战 Windows 10 之 资源 资源限定符概述 资源限定符示例 ...
- 关于web项目中的资源跳转
1.跳转包括两种方式: 转发 forward 重定向 redirect 2.两种方式的代码: AServlet类: //向request范围中存储数据 request.setAttribute(&qu ...
- ubuntu 13.10 Rhythmbox不能播放mp3 和中文乱码的问题
1.ubuntu 13.10 Rhythmbox不能播放mp3的解决方法 软件中心搜索(ubuntu额外的版权受限软件)不带括号 2.中文乱码问题解决方法: 终端顺序操作 : 1. sudo ged ...
- java web项目中打开资源文件中文乱码
1 java web项目中经常使用多模块管理.在某一个模块中添加了一些资源文件.但不是启动项目.有时候需要在程序中读取资源文件内容,打包后放到容器中就不能正常运行了.需要将所有资源文件放到启动项目的 ...
- js通过生成临时表单再删除的方式向后台提交数据(模拟ajax的post提交但还要跳转页面不返回数据)以及 struts向前台返回文件下载及防止中文乱码处理
为了避免发送数据中有特殊字符,发送时用 encodeURIComponent 编码 (其实这个 if中是直接通过浏览器下载文件的方法,else是向后台传数据的方法) struts后台Action处理接 ...
- Ubuntu-11.10中 vim和Gedit打开html文件中文乱码问题
解决vim中文乱码方法: 打开/etc/vim/vimrc 添加代码: set fileencodings=utf-8,gb2312,gbk,gb18030 set t ...
随机推荐
- Android动画系列之帧动画和补间动画
原文首发于微信公众号:jzman-blog,欢迎关注交流! Android 提供三种动画:帧动画.补间动画和属性动画,本篇文章介绍帧动画以及补间动画的使用,属性动画的使用将在后面的文章中分享,那就来复 ...
- httpclient post推送数据
客户端代码 /** * 从接口获取数据 * @param url 服务器接口地址 * @param json 传入的参数 若获取全部,此项为空 * @return 返回查询到的数据 * @throws ...
- 计数,dic的创建方式,求九九乘法表
s1='char,python,nihao,ni,ni,python's=s1.split(',')print(s1)s2=list()for i in s: if i not in s2: s2.a ...
- 用python处理excel文件有多轻松?工作从未如此简单
最近需要频繁读写 excel 文件,想通过程序对 excel 文件进行自动化处理,发现使用 python 的 openpyxl 库进行 excel 文件读写实在太方便了,结构清晰,操作简单.本文对 o ...
- 怎么快速从产品助理/初级 PM 成长为高级 PM?
一般想成为一枚产品经理的同学,如果没有经过系统的学习,都是从产品专员/助理开始做起的~ 那要想快速从产品助理/初级 PM 成长为高级 PM,以下这几点必不可少 直接上干货~ 全文篇幅较长,可以点赞收藏 ...
- Rust之路(3)——数据类型 下篇
[未经书面同意,严禁转载] -- 2020-10-14 -- 架构是道,数据是术.道可道,非常道:术不名,不成术!道无常形,术却可循规. 学习与分析数据类型,最基本的方法就是搞清楚其存储原理,变量和对 ...
- spring boot:用shardingjdbc实现多数据源的分库分表(shardingsphere 4.1.1/spring boot 2.3.1)
一,shardingjdbc的用途 1,官方站介绍: Apache ShardingSphere 是一套开源的分布式数据库中间件解决方案组成的生态圈, 它由 JDBC.Proxy 和 Sidecar( ...
- echo 输出颜色
shell脚本里使用echo输出颜色 echo命令颜色显示: echo: -n: 不换行. -e:让转移符生效. \t(tab) \n (换行) 实例: $ echo ...
- Promises/A+规范
为什么需要异步编程方式 一个函数执行之后,在它后面顺序编写的代码中,如果能够直接使用它的返回结果或者它修改之后的引用参数,那么我们通常认为该函数是同步的. 如果一个函数的执行结果或者其修改的引用参数, ...
- Spring Boot 整合多点套路,少走点弯路~
持续原创输出,点击上方蓝字关注我 个人原创博客+1,点击前往,查看更多 目录 前言 Spring Boot 版本 找到自动配置类 注意@Conditionalxxx注解 注意EnableConfigu ...