目录:
一、HTTP简介:
1、概念:Hyper Text Transfer Protocol,超文本传输协议,规定了浏览器和服务器之间的数据传输的规则;
特点:1、基于TCP协议:面向连接,安全;
2、基于请求-响应数据模型的:一次请求对应一次响应
3、HTTP协议是无状态的协议:对于事务处理没有记忆能力,每次请求-响应都是独立
缺点:多次请求间不能共享数据(Java中采用会话技术,cookie,session来解决这个问题);
优点:速度快;
2、请求数据格式:
3、响应数据格式:
二、Web服务器:
1、Web服务器概念:Web服务器是一个应用程序(软件),对HTTP协议的操作进行封装,使得程序员不必直接对协议进行操作,让web开发更加便捷。主要功能是“提供网上信息浏览服务”,本次主要使用Tomcat;
2、Tomcat概念:Tomcat是Apache软件基金会一个核心项目,是一个开源免费的轻量级web服务器,支持servlet/Jsp少量JavaEE规范。
JavaEE:Java Enterprise Edition,Java企业版。指Java企业级开发的技术规范总和。包含13项技术规范:JDBC、JSDI、EJB、RMI、JSP、Servlet、XML、JMS、JAVA IDL、JTS、JTA、JavaMail、JAF等等。
Tomcat也被称为web服务器、servlet容器。servlet需要依赖于Tomcat才能运行
Tomcat的下载安装教程可见:黑马程序员最新版JavaWeb基础教程,Java web从入门到企业实战完整版_哔哩哔哩_bilibili
三、Servlet:
1、Servlet简介:servlet是Java提供的一门动态web资源开发技术,servlet是JavaEE的规范之一,其实就是一个接口,将来我们需要定义servlet类实现servlet接口,并由web服务器运行servlet。
2、Servlet快速入门:
导入依赖坐标代码:
<dependencies> <dependency> <!-- 导入servlet--> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <!-- 依赖范围为本项目--> <scope>provided</scope> </dependency> </dependencies> <build> <plugins> <!-- tomcat插件--> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> </plugin> </plugins> </build>创建类,实现接口方法,写servlet注解:
运行成功:
3、Servlet的生命周期:
完成如下对注解的修改可以使init方法在容器创建servlet对象时就初始化,提高运行速率
4、Servlet方法介绍:
5、Servlet体系结构:
get方法可通过url访问直接使用,post方法需要前端提交等按钮进行跳转url访问;
自定义编写httpservlet,子类继承父类,进行方法重写,即可调用:根据请求方式不同,调用不同的方法,使用自定义编写,可简化代码,提高效率
6、Servlet Urlpattern配置:
四、Request&Response:
1、Request:获取请求数据,Tomcat需要解析请求数据,封装为request对象,并且创建requset对象传递到service方法中
2、Request通用方法获取请求参数:
3、解决post访问中文乱码情况:
4、解决get访问中文乱码情况:
3.1,3.2是分布解码的结果,下面新的是整合解码的结果,两个相同。
5、请求转发(forward):一种在服务器内部的资源跳转方式;
可在第一个路径中写入setAttribute方法存入数据,在第二个路径中通过getAttribute方法调用第一个路径中的数据,可实现两个路径的连通,创造像流水线一样的服务器工作。
6、Response:设置响应数据:
7、Response完成重定向:(重定向):一种资源跳转方式
可以区别重定向和上面的请求转发,完全不一样,重定向是在原来的url访问后跳转下一个url,也可以跳转到任意url,不能被共享。
8、路径问题:
浏览器使用:需要加虚拟目录(项目访问路径)
服务端使用:不需要加虚拟目录
例:
9、Resopnse响应字符数据:
例如:可以使输入的纯文本被服务器解析为html文本输出
10、Response响应字节数据:
例如:
学习积累:
首先通过对http协议的学习,了解到了服务器与浏览器连接的规则和各种请求、响应数据和各种状态码的基本了解,进而通过对servlet的学习,由servlet接口方法通过tomcat访问进而连接服务器和浏览器,实现从服务器到浏览器的跳转使用,从后端呈现到了前端,最后通过request请求对象和response响应对象可以访问到浏览器里的各种数据。
以上图片等均学习自黑马教程,如有侵权,立马删除。