服务器(一)——
一、引言
1、C/S架构和B/S架构
C/S和B/S是软件发展过程中出现的两种软件架构方式。
2、C/S架构(Client / Server 客户端/服务器)
特点:必须在客户端安装特定软件。
优点:图形效果显示较好(如:3D游戏)。
缺点:服务器的软件和功能进行升级,客户端也必须升级、不利于维护。
常见的C/S程序:QQ、微信等。
3、B/S架构(Browser / Server 浏览器 / 服务器)
特点:无需安装客户端,任何浏览器都可直接访问。
优点:涉及到功能的升级,只需要升级服务器端。
缺点:图形显示效果不如C / S架构。
需要通过HTTP协议访问。
二、服务器
1、概念——什么是 Web 服务器
Web服务器是运行及发布Web应用的容器,只有将开发的Web项目放置到该容器中,才能使网络
中的所有用户通过浏览器进行访问。
2、常见的服务器
3、Tomcat服务器
a、下载 / 安装
b、Tomcat目录结构
c、启动 / 停止 Tomcat
进入 tomcat 安装目录 bin 下,双击 startup.bat 启动程序。
双击shutdown.bat即可关闭Tomcat启动窗口。
d、修改端口号
e、URL 组成和 Tomcat 响应流程图
三、Servlet
1、概念
2、核心接口和类
a、Servlet 接口
b、GenericServlet抽象类
c、HttpServlet类
3、作用
4、搭建开发环境
用 IDEA 创建项目:
选取安装 Tomcat 目录,注意,必须下一层是 bin 的目录的那层。
5、编写 servlet
在 Tomcat 安装目录里面找到 lib 文件夹,找到 servlet 包,复制。然后在项目 WEB-INF 下面手动创建 lib 文件夹,粘贴到里面来,并导入包:
编写 servlet 有两种方法,一个是实现,一个是继承(推荐继承):
a、实现(不推荐)
如果是通过实现,则需要重写 5 个方法,这种方式不推荐。
b、继承(推荐)
如果是通过继承方式,则只需要需要哪个方法时就重写哪个方法即可:
6、deGet()方法
doGet()方法是专门用来接收 get 方式发送参数的方法。
当在浏览器地址栏输入是一个地址,按回车,发送请求,这个请求就是一个 GET 请求,GET 请求到达服务端之后,将被 doGet 方法接收并处理。
req :当前请求对象,当前请求地址,参数等等都可以从这个对象获取。
resp:响应对象,如果想给客户端返回一段数据,就可以通过这个对象返回。
7、配置 servlet 的两种方式
Servlet2.5:Tomcat6之前(包含 Tomcat6)——不支持通过注解的方式,所以使用配置文件来配置。
Servlet3.0.1从 Tomcat7 开始,基本都是使用通过注解的方式来配置。
a、通过配置文件来配置
在 WEB-INF 下面,有一个 web.xml 的文件,在里面进行注册操作:
注意:访问路径必须以 / 或者 * 开头。
b、通过注解来配置
urlPatterns 填的是路由,记住一定要带有 /,上图中意味着这两个路径都能访问。
8、编码格式
9、init()——Servlet 初始化
这个方法用来完成 Servlet 的初始化操作。
完成初始化操作有两种方法,一是通过配置文件(不推荐);二是通过注解(推荐)。
a、初始化方法一(通过配置文件)
然后 init()方法:
b、初始化方法二(通过注解——推荐)
10、service()方法
这个方法是处理请求的核心方法,所有请求都会进入到这个方法中去。
可以自行通过查看源码的方式去得知。
注意:一但重写了此方法,则请求不会再走 doGet()方法和 doPost()方法等,直接走 service()方法,所以一旦使用此方法,则需要自己手动处理请求。
11、getServletInfo()
获取其他信息。
12、destory()
销毁时触发该方法。
13、get 请求和 post 请求
两者的区别:
post 方法同样可以通过地址栏的方式将数据提交
解决 URL 地址栏乱码的方式: