JavaWeb学习笔记(七)之MVC设计模式与Servlet
MVC设计模式
M:Model,模型。一个功能(用JavaBean实现)
V:View,视图。用于展示以及与用户交互(用html、js、css、jsp、jquery等前端技术实现)
C:Controller,控制器。接受请求,将请求跳转到模型进行处理;在将处理结果返回给请求处(可以用jsp实现,但是一般使用servlet实现)
具体图如下:
Servlet类
Java类必须符合一定的规范:
1、必须继承javax.servlet.http.HttpServlet
2、必须重写其中的doGet()、doPost()方法
doGet():接收并处理所有get提交方式的请求
doPost():接收并处理所有Post提交方式的请求
Servlet要想使用必须配置web.xml(Servlet2.5)或者@Webservlet(Servlet3.0)
Servlet2.5
web.xml在项目的根目录:Webcontent、src
web.xml文件在创建项目时勾选如下图选项自动生成:
<a href="servlet文件名字">所在的jsp是在Webcontent目录中,因此发出的请求(servlet文件名字)是去请求项目的根目录
Servlet流程
1、请求→<url-parttern>→根据<servlet-mapping>中的<servlet-name>去匹配<servlet>中的
<servlet-name>,然后寻找到<servilet-class>,最终将该请求交由该<servilet-class>执行
2、借助Eclipse快速生成servlet直接新建servlet即可(继承、重写、web.xml可以借助eclipse自动生成)
Servlet2.5与Servlet3.0的区别:
Servlet3.0不需要在web.xml中配置,但是需要在Servlet类的定义处之上编写注解@WebServlet(“url-parttern”)
匹配流程:
请求地址与@WebServlet中的值进行匹配,如果匹配成功则说明请求的就是该注解所对应的类。
Servlet的生命周期:5个阶段
加载
初始化:init(),该方法会在Servlet被加载并实例化的时候执行(PS:第一次访问时会被执行,并且执行一次,也可以修改为Tomcat启动时自动执行)
服务:service()→doGet()、doPost() (PS:调用几次,执行几次)
销毁:destroy(),Servlet被系统回收时执行(PS:关闭Tomcat服务器时,执行一次)
卸载
具体如下图: