总的知识点:

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 资源跳转(主要是内部转发)与中文乱码问题的更多相关文章

  1. 11 Servlet_03 关键字总结 资源跳转:重定项 键值对 继承类 do-get do-post Request域 Context域 =空针解决方法

    知识点总结: 1.java里的关键字: byte short int long  数据类型 (正整数)char  数据类型(单字符型)boolesn ture false  布尔类型float dou ...

  2. html页面跳转出现中文乱码

    一般html的<meta charset="UTF-8">默认都是utf-8的编码格式,直接在网页中打开是正常的,但是有的时候在页面跳转时就会出现中文乱码问题,忘了参考 ...

  3. 背水一战 Windows 10 (11) - 资源: CustomResource, ResourceDictionary, 加载外部的 ResourceDictionary 文件

    [源码下载] 背水一战 Windows 10 (11) - 资源: CustomResource, ResourceDictionary, 加载外部的 ResourceDictionary 文件 作者 ...

  4. 背水一战 Windows 10 (9) - 资源: 资源限定符概述, 资源限定符示例

    [源码下载] 背水一战 Windows 10 (9) - 资源: 资源限定符概述, 资源限定符示例 作者:webabcd 介绍背水一战 Windows 10 之 资源 资源限定符概述 资源限定符示例 ...

  5. 关于web项目中的资源跳转

    1.跳转包括两种方式: 转发 forward 重定向 redirect 2.两种方式的代码: AServlet类: //向request范围中存储数据 request.setAttribute(&qu ...

  6. ubuntu 13.10 Rhythmbox不能播放mp3 和中文乱码的问题

    1.ubuntu 13.10 Rhythmbox不能播放mp3的解决方法 软件中心搜索(ubuntu额外的版权受限软件)不带括号 2.中文乱码问题解决方法: 终端顺序操作 : 1.  sudo ged ...

  7. java web项目中打开资源文件中文乱码

    1 java web项目中经常使用多模块管理.在某一个模块中添加了一些资源文件.但不是启动项目.有时候需要在程序中读取资源文件内容,打包后放到容器中就不能正常运行了.需要将所有资源文件放到启动项目的 ...

  8. js通过生成临时表单再删除的方式向后台提交数据(模拟ajax的post提交但还要跳转页面不返回数据)以及 struts向前台返回文件下载及防止中文乱码处理

    为了避免发送数据中有特殊字符,发送时用 encodeURIComponent 编码 (其实这个 if中是直接通过浏览器下载文件的方法,else是向后台传数据的方法) struts后台Action处理接 ...

  9. Ubuntu-11.10中 vim和Gedit打开html文件中文乱码问题

    解决vim中文乱码方法:     打开/etc/vim/vimrc     添加代码:     set fileencodings=utf-8,gb2312,gbk,gb18030     set t ...

随机推荐

  1. Processing 网格纹理制作(棋盘格)

    写在前面的话 很久没有写博文了.最近在整理Processing有关文档,看到之前做的一些例子,想着分享在互联网上,当然和以前一样,目前也仅为了给初学者有个学习参考,笔者能力有限.废话不多说,干就完事了 ...

  2. tf.app.flags与argparse功能类似

    https://blog.csdn.net/ei1990/article/details/76423277 tensorflow中tf.app.flags与argparse模块有点类似,通过它们都可以 ...

  3. Python-列表推导式、生成器、字典推导式

    列表推导式 [] + for + if 算子.循环.条件, 对相同的数据进行处理, 算子也可以是函数 number = [i for i in range(1, 101) if i % 2 == 0] ...

  4. MDK内的KEEP关键字以及$$Base $$Limit

    使用mdk编程,假如有一个有用的函数你定义了但是没有显式的调用,mdk在默认方式下,将会把这个函数从整个程序总删除掉,以节省ROM. 比如,你在ROM的0x00002000处定位了一个函数,假设为vo ...

  5. 解决Use 'LimitInternalRecursion' to increase the limit if necessary的问题 CodeIgniter .htaccess

    配置.htaccess如下: RewriteEngine on RewriteBase / RewriteCond $1 !^(index\.php|images|robots\.txt|css|js ...

  6. Ubuntu通过Apache安装WebDav

    使用KeePass保存密码,在个人服务器上安装WebDav协议. # 安装Apache2服务器 sudo aptitude install -y apache2 # 开启Apache2中对WebDav ...

  7. Centos下Oracle11gR2安装教程与自动化配置脚本

    系统环境准备 开发组件与依赖库安装 安装centos时选择Server with GUI,右面的可以不勾选,后面统一来装 配置本地yum源 以上包如果缺乏可配置本地yum源进行安装 sudo moun ...

  8. Python中字符串有哪些常用操作?纯干货超详细

  9. UIScrollView无法滚动以及超出屏幕的内容无法进行编辑

    通过UITextView实现简单的富文本内容编辑,功能按钮包装时遇到些问题,简单记录如下 1.通过UIToolbar将字体设置功能罗列出来,由于功能过多,通过UIScrollView进行滑动控制 1) ...

  10. JVM系列【6】GC与调优1

    JVM系列笔记目录 虚拟机的基础概念 class文件结构 class文件加载过程 jvm内存模型 JVM常用指令 GC与调优 GC基础知识 什么是垃圾 ​ 没有任何引用指向的一个对象或多个对象(循环引 ...