model-NET MVC和三层的数据层是否可以一起使用,用法区别?

问题描述

NET MVC和三层的数据层是否可以一起使用,用法区别?

请问MVC模式结合三层框架怎么实现啊?
MVC的model和数据持久层可以并用吗?

解决方案

数据持久层用M就行。
如:hibernate 只是作为数据持久化框架使用,作为MVC中的M(module)来使用,通过ORM映射将表映射成对象,通过对映射出的对象的操作来改变表,仅作为MVC的一部分

解决方案二:

 三层是三层,MVC是MVC,它们毫无关系的。

三层是从整个应用程序架构的角度来分的三层(如果程序需要,还可以分多层)。

  三层是为了解决整个应用程序中各个业务操作过程中不同阶段的代码封装的问题,为了使程序员更加专注的处理某阶段的业务逻辑。

  比如将数据库操作代码封装到一层中,提供一些方法根据参数直接返回用户需要的相应数据,这样在处理具体的业务逻辑的时候,就不用关心数据的存储问题了。

MVC是在应用程序(BS结构)的视图层划分出来的不同功能的几个模块。

  MVC主要是为了解决应用程序用户界面的样式替换问题,把展示数据的 HTML 页面尽可能的和业务代码分离。MVC把纯净的界面展示逻辑(用户界面)独立到一些文件中(Views),把一些和用户交互的程序逻辑(Controller)单独放在一些文件中,在 Views 和 Controller 中传递数据使用一些专门封装数据的实体对象,这些对象,统称为Models。

  只所以说MVC和三层毫无关系,是因为它们二者使用范围不同:三层可以应用于任何语言、任何技术的应用程序;而MVC只是为了解决BS应用程序视图层各部分的耦合关系。它们互不冲突,可以同时存在,也可根据情况使用其中一种。

解决方案三:

看你怎么理解这个“可以”如果你为了完成功能,没有什么是不可以的。既然你不用三层和mvc都可以交差,用了自然也可以。如果在这个层面上讨论问题我说服不了你。

但是如果你不是糊差事,你想问的是最佳实践,那么我可以给你一些建议。比如说无论你用不用多层,你都应该把数据库表结构相关的"model"和和视图相关的"model"解耦,这样做的好处很容易理解,往往相同的数据要应用到不同的视图,有时候单一的视图需要多个表的数据。我们把视图中的model叫做ViewModel。

时间: 2024-10-06 12:41:43

model-NET MVC和三层的数据层是否可以一起使用,用法区别?的相关文章

MVC就是三层的UI层这样理解可以吗,求科普

问题描述 我在项目里看到的是这样的现象,三层是DALBLLUI有的可能会有接口层,MVC的项目就是DALBLLMVC同样可以有接口如果把MVC理解层三层的UI,有怎么样的专业性错误呢,自己不知道这么理解对不对,求科普 解决方案 解决方案二:相当于三层的表现层吧~~解决方案三:基本上是正确的.MVC是UI层框架,至于在三层还是几层里是无所谓的.解决方案四:你可以用理解三对的方式去理解MVC,但是要注意,MVC是表现模式,面三层是架构模式!通俗来说呢,MVC是把UI进行了拆分!解决方案五:是的~就是

Extjs4使用mvc模式,封装Store层的ArrayStore无法动态加载后台数据

问题描述 Extjs4使用mvc模式,封装Store层的ArrayStore无法动态加载后台数据 store层代码 Ext.define('Desktop.store.function.FunctionStore'{ extend: 'Ext.data.ArrayStore' requires:['Desktop.model.function.UserModel'] model: 'Desktop.model.function.UserModel' autoLoad: true proxy:{

java中的mvc和三层结构究竟是什么关系

一件事,要知其然往往很简单,要知其所以然通常不是那么容易,就如最近重新巩固spring的过程中,就觉得还有许多问题其实并不是十分明了. 屈指一算,手头上做过的正式项目也有了四五六七个了,不管用的数据库和其他一些细节上的技术如何,总的来说大的框架结构都是差不多的. 说白了,也就是mvc和三层结构. 而mvc和三层结构究竟是什么关系,我曾在面试的过程中被人问过几次,也曾仔细的想过.查过这个问题,但是直到此时,我也还是不能完全确定. 只不过随着时间的积累,随着技术的沉淀,随着视野的拓宽,我大体上认同了

初识MVC与三层架构

MVC 即 Model View Controller .mvc是一种很好的设计模式的综合应用.其中 M 即Model(模型层),主要负责处理业务逻辑以及与数据库的交互. V 即View(视图层),主要用于显示数据和提交数据. C 即Controller(控制器),主要用于接受请求并控制请求转发.   三层架构,是最基本的项目分层结果.秉承"高内聚,低耦合"的思想,将整个业务应用划分为:UI层(表示层).BLL(业务逻辑层).DAL层(数据访问层).系统的主要功能和业务逻辑在BLL层进

.Net框架搭建之1、SQL Server EF MVC简单三层框架

.Net简单三层框架简介 简单三层框架,是.Net开发中最最基础的框架了,由 数据访问层.逻辑处理层.表示层组成.一般情况下,在项目中数据模型Model层也是单独一层,但是只是单纯的数据模型不算在业务层划分当中. 好了,框架搭建,如果不了解,可能会觉得难以下手,了解之后,自然知道怎么做,只是其中的步骤,比起单纯的功能开发,是要繁琐不少,下面我们来一步一步搭建属于自己的框架,这里只列出重要步骤,其他未提到的细节可自行摸索. 数据模型Model层创建 数据模型层,首先要创建数据库,再从数据库生成EF

浅谈MVC与三层架构

  首先给大家引入下MVC的概念:   MVC(Model View Controller)模型.视图以及控制器,它是一种较为广泛应用的结构设计模式.   模型:就是在MVC设计模式中需要被显示的数据.在通常情况下,该模型需要从数据库中读取数据.保存模型的状态等,提供数据的访问方法以及数据的维护.   视图:就是用来显示模型中数据的用户界面,一般来书,视图就是HTML页面.   控制器:就是用来处理对用户的输入或者交互命令,以便改变模型的状态,选择适当的视图来显示对应的模型数据.   工作机制如

【J2EE十三个规范】数据层之JDBC

[学习概要]     在上篇博客中,介绍了两个Web层的规范,本篇博客,继续J2EE十三个规范的学习,下面要介绍的便是数据层的JDBC. [学习笔记]     一.什么是JDBC     JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成.     二.JDBC的优势     1.有了JDBC API,就不必为Sybase数据库专门写一个程序,

asp.net-ASP.NET MVC 异步加载数据未完成,就不能超链接点击跳转

问题描述 ASP.NET MVC 异步加载数据未完成,就不能超链接点击跳转 页面内容是上面加载数据,下面是一些A标签(src=Url.Action("xx","xx"))跳转到各个视图! 现在问题是,我上面加载数据要好久,在加载未完成的时候,点击A标签无法跳转,加载完了,就可以! 目前试过: 1.通过Ajax加载数据, 2.通过iframe加载另外一个视图(此视图用来加载数据), 3.局部视图 4.1+2然后controller层的action方法采用下面的代码返回

js数据层中间件单页运用简单构思和应用案例

案例1:   <html xmlns="http://www.w3.org/1999/xhtml"> <head>     <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>     <title></title>      <script src="jquery-2.2.1.min.j