# 1. http协议(了解)
## (1)什么是http协议?
一种网络应用层协议规定浏览器与web服务器之间如何通信相应的的数据包的结构
注:
tcp/ip协议:保证数据可靠的传递。(UDP不可靠)
http协议需要利用tcp/ip协议来传递数据包。
1)如何通信?
step1.建立连接
step2.发送请求
step3.发送响应
step4.关闭连接
2)优点
服务器可以利用有限的连接为尽可能多的请求服务。

## (2)数据包的结构
1)请求数据包
a.请求行 (请求类型 请求资源路径 协议和版本)
b.若干消息头
注:
消息头是一些键值对,用": "隔开,浏览器与web服务器之间,可以利用消息头来传递一些特定的信息。比如浏览器可以通过发送user-agent消息头来告诉服务器,浏览器的类型和版本。
c.实体内容
只有当请求类型为post时,实体内容才会有数据
2)响应数据包
a.状态行 (协议类型和版本 状态码 状态描述)
注:
状态码是一个三位数字,表示服务器处理请求的一种状态。
200  正常
500 系统出错
404 依据请求路径找不到对应的资源
b.若干消息头
服务器也可以发送一些消息头给浏览器,比如,通过发送content-type消息头,告诉浏览器,服务器返回的数据类型。
c.实体内容

程序的处理结果,浏览器解析出来然后生成相应的的页面。

 

## (3)两种请求方式

### 1)get请求
a.哪一些情况下,浏览器会发送get请求?
情形1: 表单默认的提交方式。
情形2: 直接在浏览器地址栏输入某个地址。
情形3: 点击链接。
b.特点
特点1: 会将请求参数添加到请求资源路径的后面,所以,只能提交少量的数据。
注:因为请求行大约只能存放2K左右的数据
特点2: 会将请求参数显示在浏览器地址栏,不安全(因为有一些网络设备,比如路由器会记录请求地址)。
## 2)post请求
a.哪一些情况下,浏览器会发送post请求
将表单的method="post"。
b.特点
特点1:会将求参数添加到实体内容里面,所以可以提交大量的数据。
特点2:不会将请求参数显示在浏览器地址栏,相对安全一些。
注:
不管什么请求,都不会对数据进行加密。
所以,对于敏感数据,一定要加密。

# 2. 如何获得请求参数值
## (1)方式一
String request.getParameter(String paramName);
注:
如果请求参数名写错,会获得null值。
文本输出框、密码输入框,如果不填写任何数据,会获得""。
## (2)方式二
String[] request.getParameterValues(String paramName);
注:
当有多个请求参数名相同时,使用此方法。

多选框,如果一个选项都不选择的话,会获得null值。

# 3.表单包含有中文参数值,如何处理?
## (1)为什么会有乱码?
表单提交时,浏览器会对表单中的中文参数值进行编码(会使用打开该表单所在页面时的字符集来编码),服务器端默认会使用iso-8859-1来解码,所以会产生乱码。

## (2)如何处理?

response.setContentType("text/html;charset=utf-8");//处理方法

### 1)post请求

### 2)get请求

# 4.访问数据库
## (1)准备工作
step1. 导包 (jdbc驱动,连接池)
将jdbc02工程中的pom.xml文件里面的
dependencies复制到新工程中的pom.xml文件中。
step2. 添加jdbc.properties文件(使用jdbc02
工程中的即可)。
step3. 添加DBUtils类。(使用jdbc02工程中的即可)。
step4. 测试DBUtils类。(保证可以正常获得连接)
step5. 建表

create table t_user(
id int primary key auto_increment,
username varchar(50) unique,
password varchar(20),
email varchar(30)
);

## (2)修改AddUserServlet,使用jdbc访问数据库

http协议/获得请求/中文参数处理/访问数据库的更多相关文章

  1. tomcat解决GET请求中文参数乱码

    通常,在使用Spring MVC框架的应用程序中,为了解决中文参数乱码的问题,都会添加如下过滤器配置: <filter> <filter-name>encodingFilter ...

  2. POST、GET请求中文参数乱码问题

    POST请求中文乱码问题解决方法: 在web.xml文件中添加编码过滤器,如下: <!-- 解决post乱码 --> <filter> <filter-name>C ...

  3. springmvc将处理后的数据通过get方法传给页面时,可能会出现乱码。下面对于get请求中文参数出现乱码提出解决办法。

    对于get请求中文参数出现乱码解决办法有两个: 1.修改tomcat配置文件(tomcat--->conf--->server.xml)添加编码与工程编码一致,如下: <Connec ...

  4. Tomcat get请求中文参数乱码

    场景:使用Tomcat容器进行get方式传递中文参数到后台乱码. 原因:Tomcat默认的编码方式是ISO--. 解决方案: . 设置cofg-server.xml中的<Connector> ...

  5. 页面get请求 中文参数方法乱码问题

    对于get方式,请求参数中存在中文,可以使用下面的方法进行处理: 两次使用encodeURI()方法:例如:encodeURI(encodeURI(“中文”)),然后再服务器中使用URLDecoder ...

  6. 「post中文参数问题」以及「验证码自动识别备忘」

    前言 之前搞过几次模拟登录,都是模拟 post 后取到 cookie,之后便能用这个 cookie 愉快玩耍.这次碰到了验证码,其实只需手动登录一次,手动取到 cookie 后也能玩耍,不过 cook ...

  7. SpringMVC如何解决POST请求中文乱码问题,GET的又如何处理呢?

    在web.xml中 <filter> <filter-name>CharacterEncodingFilter</filter-name> <filter-c ...

  8. Python第十三天 django 1.6 导入模板 定义数据模型 访问数据库 GET和POST方法 SimpleCMDB项目 urllib模块 urllib2模块 httplib模块 django和web服务器整合 wsgi模块 gunicorn模块

    Python第十三天   django 1.6   导入模板   定义数据模型   访问数据库   GET和POST方法    SimpleCMDB项目   urllib模块   urllib2模块 ...

  9. [JavaEE]Get请求URI中带的中文参数在服务端乱码问题的解决方法

    在Get请求中,如果请求参数中带有中文,如 http://localhost:8080/DinnerParty/shop/search?query=多伦多, 在服务端拿到的是乱码. 这是因为客户端提交 ...

随机推荐

  1. Python高阶函数:map、reduece、filter

    笔记中函数简介: map函数:遍历序列,对序列中每个元素进行操作,最终获取新的序列. reduce函数:对于序列内所有元素进行累计操作. filter函数:对于序列中的元素进行筛选,最终获取符合条件的 ...

  2. 移动IP 它最初设想每个人都在编写应用层(7)API而不是传输层(4)API 对于QUIC,连接的标识符不是“套接字”(源/目标端口/地址协议组合)的传统概念,而是分配给连接的64位标识符

    小结: 1. 因为您对OSI模型的教育中缺少的一点是,它最初设想每个人都在编写应用层(7)API而不是传输层(4)API.应该有像应用程序服务元素之类的 东西,它们可以以标准方式处理文件传输和消息传递 ...

  3. JS中"属性"的用法

    JS的属性和C#有相似之处  ! 使用get和set来进行属性的获取和设置 var obj={ a:"1", get age(){ return obj.a; }, set age ...

  4. 【转】基于jquery,bootstrap数据验证插件bootstrapValidator 教程

    bootstrap:能够增加兼容性的强大框架. 因为项目需要数据验证,看bootstrapValidator 还不错,就上手一直,完美兼容,话不多说. 需要引用css: bootstrap.min.c ...

  5. 洛谷P4931 情侣!给我!烧了! 数论

    正解:数论 解题报告: 传送门 这题,想不到就很痛苦,但是理解了之后还是觉得也没有很难,,,毕竟实现不难QAQ 首先关于前面k对情侣的很简单,就是C(n,k)*C(n,k)*A(k,k)*2k 随便解 ...

  6. 【python基础】python程序打包成.exe运行时会弹出黑框

    用python调用.bat或者.exe文件时,一般调用 方式如下: os.system("C:\Windows\System32\osk.exe") 对吧,这样就会因为调用了系统s ...

  7. ARP报文

    硬件类型:指明了发送方想知道的硬件接口类型,以太网的值为1: 协议类型:指明了发送方提供的高层协议类型,IP为0x0800(16进制): 硬件地址长度和协议长度:指明了硬件地址和高层协议地址的长度,这 ...

  8. PS快速制作下雪效果

    PS快速制作下雪效果 具体的制作步骤如下: 1.打开PS,打开素材,打开窗口-动作 2.创建新动作,参数如下图 3.回到图层,建立一个图层,填充黑色,如下图 4.滤镜-像素化-点状化,参数如下图 5. ...

  9. BUG笔记:Android原生浏览器不认负百分数margin致Foundation Orbit往右滑动动画出错

    一看这标题就知道无比蛋疼了是不?至少我从来不用安卓自带的浏览器... 发现这个bug的场景:万恶的Foundation,它的滚动图片插件Orbit在安卓自带浏览器下手指从左往右滑动时动画仍旧表现为从右 ...

  10. NYOJ-1073 最小值

    http://acm.nyist.net/JudgeOnline/problem.php?pid=1073 # include<stdio.h> # include<stdlib.h ...