IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> 简易自定义mvc -> 正文阅读

[开发测试]简易自定义mvc

  • 什么是MVC
    • MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,它是一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码
    • Model1 jsp+jdbc
    • Model2 ->MVC
    • 核心思想:各司其职
  • MVC结构
    • V view
      • jsp/ios/android
    • C controller
      • servlet/action
    • M model
      • 实体域模型(名词)entity
      • 过程域模型(动词)dao/biz
    • 注1:不能跨层调用
    • 注2:只能出现由上而下的调用
  • 自定义MVC工作原理图
    • ?
      • 属性
        • *.action: 浏览器的响应地址
        • ActionServlet: 中央管理器,分析请求需要的方法和对象所在的类
        • Action: 子控制器
        • Model:模型
      • 步骤
        • 用户发送请求(*.action)传输到Controller(控制器)中的ActionServlet(中央管理器)
        • 再由中央管理器分析用户需求的是哪个类中的哪个方法,并将得到的数据转发给子控制器Action
        • 通过Action来执行所需要的模型中的方法,获取到需求的数据
        • 获取到数据后,将数据返回子控制器Action中,然后获取到子控制器所指向的值
        • 根据获取的子控制器的值来跳转到对应的页面
  • 自定义mvc的增强
    • 使用XML进行配置
    • ModelDriver+反射对Model赋值
    • DispatcherAction将一组相关的操作放到一个Action中
    • 只有方法与execute方法不同,其它一样
    • 使用forward标签进行流程的转发和重定向
  • action包
    • ActionServlet: ActionServlet要继承HttpServlet,再其中有多个方法
      • doPost
        • 用户的.action请求全部接收到此处
        • 1.获取用户请求并分析得到对应的目标类和目标对象
        • 2.通过建模来获取对应目标类的全限地名,根据反射来获取对象
        • 3.根据类对象+方法名得到指定的方法
        • 3.5 给对应参数赋值
        • 4.运行指定的方法并获取返回值
        • 5.根据返回值进行页面跳转
      • getAction
        • 根据反射来获取到对应的Action模型
        • url 要获取的Action的path属性
        • 对应的类的对象
      • getMethodName
        • 获取对应的方法名
        • req 请求对象
        • return 对应的方法名
      • tp
        • 跳转至对应forward中指向的路径
        • url action的path属性,用来获取action标签
        • path forward的name属性,用来获取对应的forward标签
        • req 请求对象,用来转发至目标路径
        • resp 响应对象,用来重定向至目标路径
      • handleModel
        • 给对应的子控制器的属性赋值
        • action 子控制器
        • req 请求对象,获取要设置的属性名称及对应的值
    • Action:实现此类的类被可以视为Action,方便编写方法
      • public String execute(String MethodName,HttpServletRequest req,HttpServletResponse resp) throws Exception;
    • DispatherServlet:然所有的Servlet继承此类,实现Action接口
      • 运行其他方法的方法
    • ModelDriver:定义一个获取对象的方法,让所有的Servlet类实现此方法
      • public T getModel();
  • dao包照常写
  • biz包内调用dao包的方法,并实例化一个对应的实体类,方法的返回值统一为为String,方法中除了PageBean对象之类的参数,其余参数用HttpServletRequest和HttpServletResponse这两个对象替换各一个替换
    注:HttpServletRequest和HttpServletResponse对象每个只写一个
    • 在模糊查询查询并分页例:
      • 返回值为config中的forward标签的name属性,指向一个路径
  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-08-05 17:39:53  更:2021-08-05 17:40:08 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/17 20:33:03-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码