MVC模式职责分工及学习路上的一些感想
在正文之前想先说说自己coding道路上的一点感想,不得不感慨一下时间过得很快,之前写过一篇关于JavaWeb_MVC模式的一篇博客,转眼之间时间已经过去了两个月,那时候还是一个刚刚接触JavaWeb的小白(现在依旧是小白),只是粗略的了解了一下各个技术的作用功能(以为大致了解下就可以运用自如,也是天真的不行,结果实际想做些东西的时候各种打击),随之而来的就是对基础(旧)技术的重视,决定要先打好基础之后再去学习当前流形的SSH框架等技术。于是开始了两个月的JavaWeb基础学习路线,两个月之后再回首总结,发现自己对于MVC的理解还是有些改变,准确的来说应该是深入了一些,接下来将计划进行数据库的相关学习(之前也接触过,同理,还是之前学习的太浮躁,要补的还有很多),写了些自己的感受,一来是对自己的一个肯定和一个态度的坚持,二来是希望一些跟我之前一样有过浮躁和迷茫的朋友,放慢你前进的步伐,务实好基础,楼主始终坚信越是基础的越具生命力,越是基础的越具迁移力,让我们在学习的路上共勉。接下来进入正文:
MVC设计模式
软件开发23种标准设计模式 —- 解决问题方法
MVC不属于 软件23种设计模式
MVC架构模式 将web应用资源分为三个部分 : Model、View 、Controller
在软件开发中架构的定义比设计层面是更高的,MVC架构模式 将web应用资源分为三个部分 : Model、View 、Controller
Model2: JSP + JavaBean + Servlet 职责分工
JSP 页面显示
JavaBean 封装数据 处理数据
Servlet 控制整个处理流程,调用JavaBean,调用JSP
因此一般我们在做实际项目时,也往往会根据MVC来定义我们的package,例如:
cn.megustas.user.controller
cn.megustas.user.model
cn.megustas.user.view
cn.megustas.user.utils
为什么要使用MVC? 分工明确,便于维护
例如按照MVC模式我们要设计一个用户登录系统,思路如下:
cn.megustas.user.controller
cn.megustas.user.model
cn.megustas.user.view
cn.megustas.user.utils
编写注册功能:
regist.jsp —- 规定一些user有哪些数据 ?用户名、密码、邮箱、验证码 — 引入验证码图片 — 等一下英语点击切换效果
RegistServlet 控制器
User 存放数据JavaBean
UserModel 处理数据JavaBean —-
使用pull解析器 将数据写入xml * 将xml中数据解析 List对象,将List对象数据序列化Xml
注册成功 跳转
login.jsp
用户注销 —- 原理注销session
记住用户名和密码
原理:向客户端写cookie信息
什么情况下 需要记住用户名和密码:1、用户勾选记住checkbox
2、登陆成功
- 自动登陆 — Filter
MVC模式职责分工及学习路上的一些感想的更多相关文章
- ASP.Net MVC开发基础学习笔记:一、走向MVC模式
一.ASP.Net的两种开发模式 1.1 ASP.Net WebForm的开发模式 (1)处理流程 在传统的WebForm模式下,我们请求一个例如http://www.aspnetmvc.com/bl ...
- ASP.Net MVC开发基础学习笔记(1):走向MVC模式
一.ASP.Net的两种开发模式 1.1 ASP.Net WebForm的开发模式 (1)处理流程 在传统的WebForm模式下,我们请求一个例如http://www.aspnetmvc.com/bl ...
- jsp学习---mvc模式介绍和el表达式,jstl标签库的使用入门
一.mvc模式介绍 下图是常用的mvc分层模式: 项目中的包命名规则,一般如下: com.amos.domain 封装JavaBean,一般我喜欢用model命名这个包com.amos.dao 封装d ...
- AngularJS学习之MVC模式
AngularJS是谷歌开发维护的前端MVC框架,克服了HTML在构建应用上的不足,从而降低了开发的成本. 在学习AngularJS之前,有必要和之前学过的jQuery进行对比.jQuery是java ...
- MongoDB学习笔记(三) 在MVC模式下通过Jqgrid表格操作MongoDB数据
看到下图,是通过Jqgrid实现表格数据的基本增删查改的操作.表格数据增删改是一般企业应用系统开发的常见功能,不过不同的是这个表格数据来源是非关系型的数据库MongoDB.nosql虽然概念新颖,但是 ...
- MVC模式学习笔记
一.如何设计一个程序的结构,这是一门专门的学问,叫做“架构模式”(architectural pattern),属于编程的方法论. MVC模式就是架构模式的一种,我觉得它不仅适用于开发软件,也适用于其 ...
- 【ASP.NET MVC 学习笔记】- 01 理解MVC模式
本文参考:http://www.cnblogs.com/willick/p/3195560.html 1.MVC模式是软件系统的一种架构模式,它将软件分为三大模块: 模型(Model):封装业务逻辑以 ...
- AngularJS学习笔记(1)——MVC模式的清单列表效果
MVC模式的清单列表效果 使用WebStorm新建todo.html并链入bootstrap.css.bootstrap-theme.css.angular.js.要链入的相关css和js文件预先准备 ...
- 《从零开始学Swift》学习笔记(Day67)——Cocoa Touch设计模式及应用之MVC模式
原创文章,欢迎转载.转载请注明:关东升的博客 MVC(Model-View-Controller,模型-视图-控制器)模式是相当古老的设计模式之一,它最早出现在Smalltalk语言中.现在,很多计算 ...
随机推荐
- GC相关问题
为什么会有新生代? 如果不分代,所有对象全部在一个区域,每次GC都需要对全堆进行扫描,存在效率问题.分代后,可分别控制回收频率,并采用不同的回收算法,确保GC性能全局最优. 为什么新生代会采用复制算法 ...
- 正则表达式-固定XML格式提取内容
(?<=(<(?<a>([A-Za-z]*?))>)).*?(?=(</\k<a>>))
- Nmap的多进程应用与研究
Nmap的多进程应用 使用Nmap进行多目标多端口(强调端口数目较多,比如全端口)扫描时,其在执行时间上的表现并不好.本文旨在分析多目标多端口扫描时的速度瓶颈以及减少时间成本的解决方案. 实验 实验环 ...
- java使用Selenium操作谷歌浏览器学习笔记(三)键盘操作
我们用Selenium打开网页后,可能需要在输入框输入一些内容等等,这时候就需要键盘操作了 使用sendKEys进行键盘操作,在bing的搜索框中输入内容并点击跳转 1 import org.open ...
- Android:Camera2的简单使用
以前用的是Camera,但是现在Camera已经被官方弃用了,所以这里使用的是Camera2进行演示 使用Camera需要注意的就是权限的获取,必须有权限 类图介绍 Camera2跟Camera1不一 ...
- CD管理和检索软件比较
之前一直用EverCD+,考虑到鸡蛋不能放在一个篮子里,又找了几款功能类似的进行了比较,主要考察一下几个功能: 多个镜像:一个数据文件可以包含多个目录的镜像,便于数据管理和搜索: 目录更新:目录内容发 ...
- 用Python爬取《王者荣耀》英雄皮肤数据并可视化分析,用图说话
大家好,我是辰哥~ 今天辰哥带大家分析一波当前热门手游<王者荣耀>英雄皮肤,比如皮肤上线时间.皮肤类型(勇者:史诗:传说等).价格. 1.获取数据 数据来源于<王者荣耀官方网站> ...
- WPF listbox 实现动态滚轮下拉定位
private ObservableCollection<keymodel> _listlua; public ObservableCollection<keymodel> l ...
- Python语言系列-01-入门
python的出生与应用 #!/usr/bin/env python3 # author:Alnk(李成果) """ 1,python的出生与应用 python的创始人为 ...
- QZEZTEST2021.7.27分析
T1 qzez 错误检测 题意 思路 代码 T2 qzez 比赛 题意 题面 有\(AB\)两队,每队\(n\)人,两队间进行\(n\)场比赛,每个人都要参赛,对手随机且概率均等.每人都有一个实力值, ...