在正文之前想先说说自己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模式职责分工及学习路上的一些感想的更多相关文章

  1. ASP.Net MVC开发基础学习笔记:一、走向MVC模式

    一.ASP.Net的两种开发模式 1.1 ASP.Net WebForm的开发模式 (1)处理流程 在传统的WebForm模式下,我们请求一个例如http://www.aspnetmvc.com/bl ...

  2. ASP.Net MVC开发基础学习笔记(1):走向MVC模式

    一.ASP.Net的两种开发模式 1.1 ASP.Net WebForm的开发模式 (1)处理流程 在传统的WebForm模式下,我们请求一个例如http://www.aspnetmvc.com/bl ...

  3. jsp学习---mvc模式介绍和el表达式,jstl标签库的使用入门

    一.mvc模式介绍 下图是常用的mvc分层模式: 项目中的包命名规则,一般如下: com.amos.domain 封装JavaBean,一般我喜欢用model命名这个包com.amos.dao 封装d ...

  4. AngularJS学习之MVC模式

    AngularJS是谷歌开发维护的前端MVC框架,克服了HTML在构建应用上的不足,从而降低了开发的成本. 在学习AngularJS之前,有必要和之前学过的jQuery进行对比.jQuery是java ...

  5. MongoDB学习笔记(三) 在MVC模式下通过Jqgrid表格操作MongoDB数据

    看到下图,是通过Jqgrid实现表格数据的基本增删查改的操作.表格数据增删改是一般企业应用系统开发的常见功能,不过不同的是这个表格数据来源是非关系型的数据库MongoDB.nosql虽然概念新颖,但是 ...

  6. MVC模式学习笔记

    一.如何设计一个程序的结构,这是一门专门的学问,叫做“架构模式”(architectural pattern),属于编程的方法论. MVC模式就是架构模式的一种,我觉得它不仅适用于开发软件,也适用于其 ...

  7. 【ASP.NET MVC 学习笔记】- 01 理解MVC模式

    本文参考:http://www.cnblogs.com/willick/p/3195560.html 1.MVC模式是软件系统的一种架构模式,它将软件分为三大模块: 模型(Model):封装业务逻辑以 ...

  8. AngularJS学习笔记(1)——MVC模式的清单列表效果

    MVC模式的清单列表效果 使用WebStorm新建todo.html并链入bootstrap.css.bootstrap-theme.css.angular.js.要链入的相关css和js文件预先准备 ...

  9. 《从零开始学Swift》学习笔记(Day67)——Cocoa Touch设计模式及应用之MVC模式

    原创文章,欢迎转载.转载请注明:关东升的博客 MVC(Model-View-Controller,模型-视图-控制器)模式是相当古老的设计模式之一,它最早出现在Smalltalk语言中.现在,很多计算 ...

随机推荐

  1. Python脚本:爬取天气数据并发邮件给心爱的Ta

    第一部分:爬取天气数据 # 在函数调用 get_weather(url = 'https://www.tianqi.com/foshan') 的 url中更改城市,foshan为佛山市 1 impor ...

  2. synchronized 优化手段之锁膨胀机制!

    synchronized 在 JDK 1.5 之前性能是比较低的,在那时我们通常会选择使用 Lock 来替代 synchronized.然而这个情况在 JDK 1.6 时就发生了改变,JDK 1.6 ...

  3. @FeignClient常用属性

    @FeignClient(name = "gateway-test", value = "gateway-test", url = "localhos ...

  4. 从事 Android应用开发4年有余,现在工资7500。很不爽!怎么办?

    最近到某论坛看到一个帖子: 坐标北京,在一个公司从事android应用开发4年有余(毕业至今没换过公司).公司利润越来越大,工资却每年长1000,如今才到7500.琢磨着换工作,又不想扔下这四年来逐步 ...

  5. Redis奇怪的姿势

    Redis奇怪的姿势 写在前面 之前渗透 摸鱼 时和小伙伴发现了一个redis,存在未授权,是win服务器但是没有路径,度娘了之后发现了这个姿势,特此学习记录一下. 写入启动项 环境搭建 window ...

  6. miniFTP项目实战五

    项目简介: 在Linux环境下用C语言开发的Vsftpd的简化版本,拥有部分Vsftpd功能和相同的FTP协议,系统的主要架构采用多进程模型,每当有一个新的客户连接到达,主进程就会派生出一个ftp服务 ...

  7. NOIP 模拟 $20\; \rm 玩具$

    题解 \(by\;zj\varphi\) 一道概率与期望好题 对于一棵树,去掉根后所有子树就是一个森林,同理,一个森林加一个根就是一棵树 设 \(f_{i,j}\) 为有 \(i\) 个点的树,高度为 ...

  8. Failed to set locale, defaulting to C.UTF-8

    CentOS 8中执行命令,出现报错:Failed to set locale, defaulting to C.UTF-8 报错原因: 1.没有安装相应的语言包. 2.没有设置正确的语言环境. 解决 ...

  9. uwp Button的动态效果

    你应该覆盖Button样式 <Page.Resources> <Style TargetType="Button" x:Key="CustomButto ...

  10. vs2019 快捷键汇总

    https://docs.microsoft.com/zh-cn/visualstudio/ide/default-keyboard-shortcuts-for-frequently-used-com ...