对于java中经典的开发模式MVC,有一些感触!现说一下Java中数据的运行流程,由于我技术有限,有错的话欢迎提出,不喜勿喷!

我们知道在MVC开发模式,包括三部分视图层V(view)、控制层C(Controller)和模型层M(model),那么在一个项目中,这三部分又是指的什么呢?

视图层:顾名思义指的是看到的界面,通常也就是我们所说的JSP页面。

控制层:指的是servlet。

模型层:除了这两部分,剩下的所有。

在这里我将用画图的形式显示一下,数据的流转方式

1.当我们在JSP页面点击一个事件时,根据被配置的action,通过Post或Get的提交方法

2.当对应的servlet接收到由JSP页面提交的请求时,同时也根据页面元素名,获取页面的元素。在这个servlet中将调用接口

3.当servlet在调用接口时,接口会查询它的实现类

4.在实现类中会继承JDBC的工具类,通过方法连接到数据库

5.当连接到数据库时,通过硬编译,或者预编译将值注入到sql语句中

6.7在数据库查询出数据时通过JDBC将查询结果集反倒实现类中,在实现类中封装成对象或者集合

8.9通过原来在servlet调用的接口时,现在将此结果返回到servlet

10.在servle通过逻辑调用t处理查询出的结果,再将最终处理好的数据通过重定向或请求转发到JSP页面中。

最后在前台用el标签和javascript完成最终的页面。

MVC开发模式的数据运行流程的更多相关文章

  1. Extjs MVC开发模式详解

    Extjs MVC开发模式详解   在JS的开发过程中,大规模的JS脚本难以组织和维护,这一直是困扰前端开发人员的头等问题.Extjs为了解决这种问题,在Extjs 4.x版本中引入了MVC开发模式, ...

  2. 什么是MVC开发模式以及它和传统开发模式的区别

    Model1模式:使用纯JSP或者JSP+JavaBean开发,存在如下缺陷:JSP页面中混合了HTML和JAVA代码,从而给代码的开发和阅读带 来了麻烦:系统后期维护和扩展非常困难,例如在JSP页面 ...

  3. Extjs 6 MVC开发模式(二)

    1.Extjs MVC开发模式 在JS的开发过程中,大规模的JS脚本难以组织和维护,这一直是困扰前端开发人员的头等问题.Extjs为了解决这种问题,在Extjs4.x版本中引入了MVC开发模式,开始将 ...

  4. ext.js的mvc开发模式详解

    ext.js的mvc开发模式详解和环境配置 在JS的开发过程中,大规模的JS脚本难以组织和维护,这一直是困扰前端开发人员的头等问题.Extjs为了解决这种问题,在Extjs 4.x版本中引入了MVC开 ...

  5. jsp学习笔记:mvc开发模式

    jsp学习笔记:mvc开发模式2017-10-12 22:17:33 model(javabe)与view层交互 view(视图层,html.jsp) controller(控制层,处理用户提交的信息 ...

  6. MVC开发模式下的用户角色权限控制

    前提: MVC开发模式 大概思想: 1.在MVC开发模式下,每个功能都对应着不同的控制器或操作方法名(如修改密码功能可能对应着User/changepd),把每个功能对应的控制器名和操作方法名存到数据 ...

  7. 【转】EXT JS MVC开发模式

    原文链接:EXT JS MVC开发模式 在app(亦即根目录)文件夹下面创建controller.model.store和view文件夹,从名称上就知道他们该放置什么代码了吧.然后创建Applicat ...

  8. MVC开发模式简述

    了解MVC开发模式,首先我们要了解一下发展趋势 一.什么是软件设计 Jack W.Reeves 于14年前(1992年),就在其撰写的论文——<What is Software Design&g ...

  9. Java基础85 MVC开发模式

    1.MVC开发模式 本文用 Servlet+JSP+javaBean 的开发模式来讲解 Model:用javabean实现,用于封装业务数据View:用jsp实现,用于显示数据Controller:用 ...

随机推荐

  1. js复制文本内容到剪贴板

    记录一下使用clipboardData复制不成功. 1.定义一个按钮执行复制 <div> <button type="button" id="copyR ...

  2. RTX临界段,中断锁与任务锁

    临界段         代码的临界段也称为临界区,一旦这部分代码开始执行,则不允许任何中断打断.为确保临界段代码的执行不被中断,在进入临界段之前须关中断,而临界段代码执行完毕后,要立即开中断.    ...

  3. redis操作封装类

    class Redis {     // 默认配置名称(使用load_config加载) private $_default_config_path = 'package/cache/redis'; ...

  4. gym 101858

    我这个傻逼被治了一下午. 大好的橘势,两个小时6T,去看L,哇傻逼题.然后我跑的最短路T到自闭 最后十几分钟去想了下A,一直在想如何表示状态..就是想不到二进制搞一下... 然后游戏结束了..以后我就 ...

  5. Java课程寒假之开发记账本软件(网页版)之二

    一.实现基础功能之一(记账) 一个记账本最基础之一的功能就是记账,所以也是首先要解决的问题,我选择了上学期使用的MySQL数据库来对账本进行存储. 我选择记账的方法是分开记账,就是支出放在一个表,收入 ...

  6. Oracle管理常用查询语句

    1.查看表空间的名称及大小 select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_sizefrom dba_tablespaces ...

  7. devmapper: Thin Pool has 154464 free data blocks which is less than minimum required 163840 free dat

    清理exited进程: docker rm $(docker ps -q -f status=exited) 清理dangling volumes: docker volume rm $(docker ...

  8. python文档-基本API命令翻译及使用方法!

    1.使用tkinter.Tk() 生成主窗口(window=tkinter.Tk()): window.title('标题名')         修改框体的名字,也可在创建时使用className参数 ...

  9. 性能优化-YAHOO军规

    1.尽可能减少http请求数量 2.使用CDN 3.添加Expire/Cache-Control头 4.启用Gzip压缩 5.将css放在页面最上 6.将script放在页面最下 7.避免在CSS中使 ...

  10. ExecuteExcel4Macro (宏函数)使用说明

    用ExecuteExcel4Macro从未打开的Excel工作簿中读取数据(转载) 从另外一个未打开的Excel文件中读取数据的函数 下面这个函数调用XLM宏从未打开的工作簿中读取数据. *注意:   ...