mvc模式

javaweb学习总结(二十一)——JavaWeb的两种开发模式

北慕城南 提交于 2020-02-20 07:52:55
  SUN公司推出JSP技术后,同时也推荐了两种web应用程序的开发模式,一种是JSP+JavaBean模式,一种是Servlet+JSP+JavaBean模式。 一、JSP+JavaBean开发模式 1.1、jsp+javabean开发模式架构   jsp+javabean开发模式的架构图如下图(图1-1)所示 图1-1   在jsp+javabean架构中,JSP负责控制逻辑、表现逻辑、业务对象(javabean)的调用。   JSP+JavaBean模式适合开发业务逻辑不太复杂的web应用程序,这种模式下,JavaBean用于封装业务数据,JSP即负责处理用户请求,又显示数据。 1.2、JSP+JavaBean开发模式编写计算器   首先分析一下jsp和javabean各自的职责,jsp负责显示计算器(calculator)页面,供用户输入计算数据,并显示计算后的结 果,javaBean负责接收用户输入的计算数据并且进行计算,JavaBean具有firstNum、secondNum、result、 operator属性,并提供一个calculate方法。   1、编写CalculatorBean,负责接收用户输入的计算数据并且进行计算   CalculatorBean代码如下: 1 package me.gacl.domain; 2 3 import java.math

MVVM和MVC的总结

时光怂恿深爱的人放手 提交于 2020-02-19 16:50:44
MVVM MVVM与MVC最大的区别就是:它实现了View和Model的自动同步,也就是当Model的属性改变时,我们不用再自己手动操作Dom元素,来改变View的显示,而是改变属性后该属性对应View层显示会自动改变。非常的神奇~ 这里我们拿典型的MVVM模式的代表,Vue,来举例 <div id="app-5"> <p>{{ message }}</p> <button v-on:click="reverseMessage">逆转消息</button> </div> var app5 = new Vue({ el: '#app-5', data: { message: 'Hello Vue.js!' }, methods: { reverseMessage: function () { this.message = this.message.split('').reverse().join('') } } })   这里的html部分相当于View层,可以看到这里的View通过通过模板语法来声明式的将数据渲染进DOM元素,当ViewModel对Model进行更新时,通过数据绑定更新到View。 Vue实例中的data相当于Model层,而ViewModel层的核心是Vue中的双向数据绑定,即Model变化时VIew可以实时更新,View变化也能让Model发生变化。 整体看来

通过源代码研究ASP.NET MVC中的Controller和View(一)

て烟熏妆下的殇ゞ 提交于 2020-02-19 11:53:48
因为Jumony计划提供ASP.NET MVC的视图模型支持,以取代ASP.NET MVC默认的视图模型(事实上,我觉得很糟糕)。所以,需要先对ASP.NET MVC的视图模型有一个了解。 ASP.NET MVC是一个很年轻的项目,代码并不多,这很好,但麻烦的是文档和资料也不够多,看来要想了解其视图模型只能靠自己。 不过幸运的是,MVC模型已经决定了其大体的框架,所以我打算直接用Reflector来看看里面的结构(不直接用源代码的原因仅仅是因为Reflector导航功能实在是太强了,但当我贴代码的时候,贴的是MVC源代码),配合名称和设计思想反析就能够很轻松的了解其架构。 那么这一次研究的对象是.NET Framework 4中的ASP.NET MVC 2。 我先来看一下ASP.NET MVC中的类型,那么我很轻松的发现,这两个类型会是我的切入点: IView IController 这两个接口再明白不过的告诉了我它们就是View和Controller的抽象。那么他们俩都只有一个方法,所以职责也很容易就能推导出来: IView只有一个方法:void Render(ViewContext viewContext, TextWriter writer); 依据视图上下文(ViewContext)呈现HTML。 IController也只有一个方法:void Execute

MVC与三层架构的关系

允我心安 提交于 2020-02-16 12:03:56
①MVC:---- web开发的设计模式 M:Model—模型 javaBean:封装数据 V:View-----视图 jsp:单纯进行页面的显示 C:Controller----控制器 Servelt:获取数据–对数据进行封装–传递数据-- 指派显示的jsp页面 ②MVC可以说是web层的技术 这个图超级重要 框架代表的功能也都在这张图里 Struts2 SpringMVC 都是web层框架 spring整合web和dao层 也就是service层 hibernate 与mybtis 都是操作dao层的框架 来源: CSDN 作者: 老婆就是要败家 链接: https://blog.csdn.net/qq_45014905/article/details/104338822

《茶余饭后小故事》MV*、MVC、MVP、MVVM的前世今生

老子叫甜甜 提交于 2020-02-06 18:32:19
今天我们讲讲历史,讲讲故事,不扯高深术语。 MV* 表示的意思是: M(Model逻辑层) + View(视图层) + *(中间者) 。上帝提出了这个逻辑与视图分离,用中间者进行连接的伟大思想,并将实现这个思想的艰巨任务安排给人间。 人们纷纷跃跃欲试,想率先实现上帝布置的任务。随着历史的推移,不同时期先后出现了三个著名的中间者,他们依次是 Controler 、 Presenter 、 ViewModel 。 Controler是第一个吃螃蟹的小伙子,昵称叫控制者。它与MV结合并自命名为 MVC模式 。它生平最大的贡献是能把视图层View的数据写进逻辑层Model,但是很可惜,View不是通过它来读取Model的数据,而是跳过它,直接读取Model的数据。被“选择性无视”的Controler大失颜面,这件事也让它经常被后世取笑。 上帝很赞赏Controler的勇气,但看着MVC这上下都不对称的数据读写方式,感觉有些哭笑不得,显然对Controler不是很满意。 另外一个叫Presenter的小伙站了出来,他身材健硕,力大无穷。只见他自告奋勇地说:“我是Presenter,中文名叫主持人,以后视图层和逻辑层他们之间的通信交给我来主持!”。 于是一个新的模式出现了--- MVP模式 。 这个模式看起来非常不错,在试行了一段时间后,上帝也感觉非常满意,它不仅对称

java MVC 设计模式 【dao层】【Properties类】

拈花ヽ惹草 提交于 2020-01-26 21:24:49
DAO(data access object) 什么是DAO层 DAO(Date Access Object) 模型就是写一个类,把访问数据库的代码封装起来,DAO在数据库与业务逻辑(Service)之间,进行数据的访问和操作。 DAO层包括三个部分 DAO接口:定义了一系列操作数据库的方法。 DAO实现类:实现了操作数据库的方法。(对于不同数据库,有不同的实现) DAO工厂类:返回一个DAO实现类对象。 步骤 1、实体域,即操作的对象,例如我们操作的表示user表,那么就需要先写一个User类; 2、DAO模型需要先提供一个DAO接口; 3、然后再提供一个DAO接口的实现类; 4、再编写一个DAO工厂,Service通过工厂来获取DAO实现; Properties类 (Java.util.Properties) properties类的作用 java配置文件中很多变量是经常改变的,为了方便用户的配置,能让用户够脱离程序本身去修改相关的变量设置。就像在Java中,其配置文件常为.properties文件,是以键值对的形式进行参数配置的。xx.properties 为Java 语言常见的配置文件,如数据库的配置jdbc.properties, 系统参数配置 system.properties。 使用properties类读取properties文件 常用的方法

C++ 设计框架注意的地方

左心房为你撑大大i 提交于 2020-01-25 09:20:24
C++ MVC 注意的地方 工作快两年了,之前写了第一篇博客(拢共就没有多少字,也好意思说是博客。。。),正好趁着这个机会总结下吧。 毕业去了深圳某激光公司当一个小码农,庆幸遇到了一个人非常好的组长,带着我在这行扎下了脚,感谢我强哥当初毫不吝啬的指导(就不知道茫茫大海你能不能看到我这篇),才能让我今天能够有* xue 微的资格谈谈设计。 现在在一家小公司,算是项目负责人了吧(-__-),公司刚成立没多久,啥底层库没有,项目也是我入职了才启动,整个框架包括功能实现都是我自己完成(框架已经搭完,功能也实现了大半了),这段时间累不累?真的累,但是感觉嘛?996福报是真的爽! 好了废话不多说了,让我们进入主题。 MVC 啥是MVC? M --Model 模型 V --View 视图 C – Controller 控制器 很多同学对MVC一知半解,窃以为还是对项目流程不够熟悉,甚至只是停留在网上的相关资料,这就造成了感觉自己好像是看明白,但又好像不那么明白,仿佛是有一层薄薄的面纱挡在跟前,能够看个大概,却不能够清楚细节。 下面就让我们来一起揭开这层讨厌的面纱。 百度搜一下,会发现对于MVC网上有各种解说,怎么说呢,所谓一千个观众就有一千个哈莫雷特(好像是这么说的吧)。首先盗几个图: 图一: 图二: 图三: 图四: 这只是我简单的从网上随手拿来的,从这可以看出不同的人眼中有着不同的MVC模式

应用集成实验报告

五迷三道 提交于 2020-01-24 08:46:49
应用集成原理与工具集成实验报告 实验环境:普通PC机,Windows 2003或Windows XP 系统、网络交换机、VS.Net 开发环境、数据库运行环境。 实验目的: 通过这次实验掌握并了解基于中间件集成的实验原理与实验操作; 掌握MVC模式设计系统; 体会MVC模式下集成的好处。 实验内容: 1.创建两个数据库,每个数据库各两张表。 注意:两张表中虽然基本内容⼀致,但是它们的表名字不同,表中字段和类型也有所区别。 2. ⽤xml完成针对数据库本身表中字段,属性,格式等的描述。 说明: 2.1 ⼀个数据库⾄少⽤1个xml⽂件来描述,此外,还需⽤1个xml⽂件来统⼀所有异构字段名称和类型。 2.2 这些xml表就是中间件中关于元数据表的建⽴,会在阶段4中⽤到。 2.3 请注意xml表中针对不同DB中相同信息表中的字段描述,最好标签相同,但是标签中的内容不同,这都是为了最终集成的需要。 3. 完成⼀个jsp+Servlet+javaBean的信息管理系统. 说明: 3.1 针对2个数据库表的查询,譬如可以查询所有男性学⽣的信息,所有选修某⻔课程学⽣的信息,可以⼿动增加⼀个新的学⽣到某个指定的班级,可以批量删除选择某⼀⻔课程的学⽣,可以增加⼏⻔课程到2个数据库中等,功能越多越好。 3.2 所有的逻辑功能不可以写在jsp中,必须写⼊servlet。 4. 完成中间件集成功能。 说明:

Django的框架设计模式MTV(与MVC模式的比较)

自古美人都是妖i 提交于 2020-01-23 03:12:22
MVC 设计模式 MVC 代表 Model-View-Controller(模型-视图-控制器) 模式。 作用: 降低模块间的耦合度(解耦) MVC M 模型层(Model), 主要用于对数据库层的封装 V 视图层(View), 用于向用户展示结果 C 控制(Controller ,用于处理请求、获取数据、返回结果(重要) MVC模式如图: MTV 模式 MTV 代表 Model-Template-View(模型-模板-视图) 模式。这种模式用于应用程序的分层开发 作用: 降低模块间的耦合度(解耦) MTV M – 模型层(Model) 负责与数据库交互 T – 模板层(Template) 负责呈现内容到浏览器 V – 视图层(View) 是核心,负责接收请求、获取数据、返回结果 MTV模式如图: 来源: CSDN 作者: liu*star 链接: https://blog.csdn.net/liuxingxing_star/article/details/103978238

asp.net mvc(二)

戏子无情 提交于 2020-01-22 08:46:55
MVC中的ViewData View在MVC模式中与用户进行最直接的接触,负责数据的呈现。注意:view只是负责数据的呈现,我们要尽量让view中不涉及业务逻辑的处理。既然View与后台代码是相分离的,但View和Controller是如何联系在一起的呢,答案就是ViewData。 ASP.NET MVC默认使用WebForm来作为view。新建的aspx页面继承自ViewPage,所有的aspx页面都必须继承自ViewPage。我们再看一下ViewPage的部分代码: public class ViewPage : Page, IViewDataContainer 我们使用传统的asp.net开发时,经常会为了开发的需要,会写一个类似PageBase类,例如会把部分比较通用的方法写入基类。同样在MVC中,我们也可以这样做。 第一:创建一个ViewPage<T>类: 这个类主要是完成一个继承功能,对MvcContrib.FluentHtml.ModelViewPage,MvcContrib.FluentHtml.ModelViewUserControl的继承,实现System.Web.Mvc.ViewPage的功能。还有一个非常重要的作用就是把所有的扩展方法都体现在这个类中。类中using GuestBook.Common.HtmlHelpers;可以说明。 using