JSP备忘录04 - Servlet 基础介绍

servlet 生命周期   MVC与三层架构

目录

前言

一、servlet基本介绍

生命周期(5个部分)

基础API

二、MVC & Servlet

1.MVC

2.三层架构

总结



前言

Servlet相对于MVC模型中的controller,主要就是获取View传递来的参数,加载Module的类与对象,将View参数传入Module,获取返回值后再传回给View。


一、servlet基本介绍

servlet 是server  applet (运行在服务端的小程序) 的简称, 软件的目标就是接收请求,处理数据,响应这三个步骤,其中将接收请求和响应请求抽取成Web服务器,处理请求(主要是和数据库curd相关操作)交由servlet处理。在servlet中加载实体类和数据库交互,后期改为三层模型,将比较复杂的数据库操作和原子性操作抽取出来作为service层和DAO层。

  • 生命周期(5个部分)

加载  初始化 init()  服务service()  销毁destroy()  卸载

其中 加载/卸载 是servlet容器自动处理的,重点在 服务 阶段。服务 根方法 是service() 方法(抽象方法),一般关注其 doGet();  doPost(); 方法的实现。

  • 基础API

ServletContext  getServletContext(); 获取servlet上下文对象   

String getInitParameter(String name);  在当前Servlet范围内获取名为 name 的参数值

补充 application 对象:

    getContextPath() 获取相对路径   getRealPath()  绝对路径.

   set/getAttribute()  ...   

二、MVC & Servlet

1.MVC

Model 模型层 中,有封装逻辑的模型(功能);也有封装数据的模型(实体类),该实体类和表对应,新增数据时可以将多个数据封装到实体类中,在V->C->M中传输;

登录功能的 MVC 示例图如下:

2.三层架构

设计的目标与MVC一致,都是为了解耦,提高代码复用,但二者对项目的理解方式不同。

三层架构由  表示层(UserShowLayer)+业务逻辑层( BusinessLogicLayer/service)+数据访问层 ( DataAceccLayer/DAO)

其中表示层的前台和后台代码相当于V+C层,业务逻辑层和数据访问层相当于将M拆解为可分割与不可分割的数据库操作,既分为调用数据库和直接访问数据库的操作。


总结

servlet是简单的,ServletConfig对象(Servlet配置”)封装了Servlet的一些参数信息。如果需要,我们可以不必自己使用dom4j解析web.xml文件就直接通过它获取参数信息。

HttpServlet的service方法已经替我们完成了复杂的请求方法判断,只需继承HttpServlet并重写doGet()/doPost(),  HttpServlet 把不确定的业务代码抽成一个方法,调用它。当子类重写该方法,整个业务代码就活了。这就是模板方法模式。(来自知乎

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值