• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
珍珠奶茶不加糖
博客园    首页    新随笔    联系   管理    订阅  订阅
JavaWeb之Servlet组件

JavaWeb之Servlet组件

JavaWeb之Servlet组件

设计模式

  • 设计模式分类
    • 单例模式
    • 工厂模式
    • 装饰模式
    • 策略模式
    • 观察者模式
    • 代理模式
  • 按类型分类
    • 创建型
    • 结构型
    • 行为型

JavaWeb设计模式

  • MVC设计模式
    • M:model。模型,处理业务逻辑
    • V:View。视图,展示数据
    • C:Controller。控制器,调度
  • 优点
    • 维护性好
    • 便于分块开发
    • 更利于代码的复用性

Servlet三大组件

  • web服务端小程序
  • Filter:过滤器
  • Listener:监听器

Filter过滤器

  • 什么是过滤器
    • 当客户端浏览器发送请求时,首先交由过滤器进行处理,如果符合过滤规则,name将请求再次发送给服务端,否则,不向服务端发送请求
  • Filter的声明周期
    • init() -- 过滤器初始化,只有一次
    • doFilter() -- 执行过滤
    • destroy() -- 过滤器销毁,只有一次
  • Filter操作
    • 创建一个类,继承Filter,并实现doFilter方法
    • chain.doFilter(req,resp);这个叫续传,如果没有它,过滤器不会将请求发送给服务端
    • 过滤器拦截路径
      • '/' -- 所有请求
      • '*.do' -- 所有的Servlet请求

Listener

  • Listener:监听器
  • 作用:监听request、session、application
  • 监听方式
    • 生命周期
      • 监听器监听目标对象的创建与销毁
      • 对Session生命周期的监听实现
        • HttpSessionListener
          • sessionCreated(HttpSessionEvent se)
          • sessionDestroyed(HttpSessionEvent se)
          • HttpSessionEvent称为事件源,由哪个对象触发了这个事件
      • Session
        • 监听Session
        • 销毁Session
    • 属性变更
      • 监听器监听目标对象数据的变更
        • 对Session属性变更的监听实现
          • HttpSessionAttrbitelListener
            • attributeAdded(HttpSessionBindingEvent   se) -- 当Session中添加一个新属性时调用此方法
            • attributeReemove(HttpSessionBindingEvent   se) -- 当Session中删除一个属性是调用此方法
            • attributeReplaced(HttpSessionBindingEvent   se) -- 当Session中修改一个属性是调用此方法
        • 对application属性变量
          • ServletContextAttributeListener
            • attributeAdded(ServletContextAttributeEventscae) -- 当application中添加一个新属性时调用此方法
            • attributeRemove(ServletContextAttributeEventscae) -- 当application中删除一个属性时调用此方法
            • attributeReplaced(ServletContextAttributeEventscae) -- 当application中修改一个属性时调用此方法

分页设计的实现

  • 分页基础
    • 通过SQL命令进行分页查询
      • select * from 表名 limit
    • 查询出总记录数
      • select count(*) from 表名
    • 总页数
      • 总记录数/每页显示的条目数 = 总页数
  • 封装分页
    • 类名称:PageInfo
    • 相关信息:总页数、当前页数、每页显示的数据,URL等
如有问题,请发送邮件至buxiaqingcheng@163.com或者buxiaqingcheng@dingtalk.com
posted on 2020-09-25 16:43  珍珠奶茶不加糖  阅读(147)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3