`
october731
  • 浏览: 86593 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

MVC架构——模型层 数据库表实体映射类的存在的意义

阅读更多
        项目是spring+Hibernate的,当然了,也是采用的NVC三层架构。这里我主要想不透的一点是其模型层,也就是数据层的问题。在此抛砖引玉,引出大家的看法。
模型层主要是有两种对象,一个的Domain,一个的DTO(Data Transport Object)。Domain是用作相对的数据库表的一一映射的,里面完成了相应的简单的对于一张特定的表的增删改查;DTO是针对页面来设计的,DTO里面的数据以页面为单位,一个DTO里面的字段和属性就是针对于具体页面层的所需要的数据来设置的,也就是说,一个页面对应一个DTO(WebForm1>WebForm1_DTO,WebForm2>WebForm2_DTO……)。在实际的开发当中,我们的业务,也就是每个页面所要调用的具体的业务方法都写在业务层,需要返回数据,就用DTO来封装,需要操作数据,也是在业务层中自己写的专有的方法,不管是用程序中的SQL,还是调用数据库的SP,始终就没有用到Domain的一丁一点。
具体来说是这样的,我们要返回的数据,基本上都不可能来自于一整张表的完全一条数据,那样一来多余的信息也有,缺少的信息也有,我的一个页面需要返回一个学生的有选择的基本信息和他的有选择的成绩的信息,那么,StudentInfo表和Score表都不能满足我的信息的请求,我还是得靠自己的DTO才能满足我的要求;那么,我的数据实体层映射还是需要DTO来完成。所以我就越来越搞不明白,既然我们的数据传输只需要对应页面的DTO,那么,我的这些数据库映射实体类还用来有什么存在的意义呢?
0
0
分享到:
评论

相关推荐

    java Web MVC模式下的数据库连接项目

    - **实体类**:如`User`类,通常用于封装数据库表的数据结构。 - **业务逻辑类**:如`UserMgr`类,负责处理具体的业务逻辑,如增删改查等操作。 - **数据库连接组件**:`DBBean`类负责数据库的连接和关闭,提供基本...

    ssh架构——课程的添加删除查看修改

    在课程管理中,我们可以创建一个Course实体类,通过Hibernate的注解或配置文件来定义其与数据库表的关联。执行添加、删除、查询和更新操作时,只需要操作Course对象,Hibernate会自动处理SQL语句的生成和执行。 ...

    Spring MVC Ibatis Bean 根据mysql数据表——代码生成工具

    Spring MVC Ibatis Bean 根据mysql数据表的代码生成工具是提升开发效率、降低维护成本的有效手段,它整合了Spring MVC的控制层、Ibatis的数据访问层以及Java Bean的业务实体,帮助开发者快速构建基于MySQL数据库的...

    JSP源码——Struts+Hibernate实现MVC_strutsmvc.zip

    4. **映射文件**:XML文件,描述了实体类与数据库表之间的关系,包括字段映射、主键生成策略等。 5. **Session接口**:负责对象的持久化操作,如保存、更新、删除和查询。 6. **Criteria API/Query API**:提供更加...

    ASP.NET源码——RedSoft多层分布式架构实例源码.zip

    在MVC架构中,模型通常包含了业务对象的属性和方法。 5. 分布式组件:在多层分布式架构中,不同层可能分布在不同的服务器上,通过网络进行通信。这可能涉及到WCF(Windows Communication Foundation)服务或者.NET ...

    独门架构——JavaWeb开发应用详解(电子版)

    它通过注解或XML配置,将Java实体类映射到数据库表,简化了数据库访问。 5. **Spring框架**:Spring是Java企业级应用的主流框架,提供了依赖注入(DI)和面向切面编程(AOP)等核心特性。Spring MVC是Spring框架的一...

    MVC学习之——Professional ASP.NET MVC 3

    本章深入探讨了模型设计的原则和最佳实践,包括如何使用实体数据模型(Entity Framework)来操作数据库,以及如何实现验证逻辑等高级功能。同时,还介绍了模型绑定机制及其在实际开发中的应用。 #### 第5章 表单与...

    自己动手做框架——ORM,MVC,IOC框架

    2. 实现MVC架构:创建模型类来处理业务逻辑,视图类用于展示结果,控制器类作为用户输入和业务逻辑之间的桥梁。确保每个组件都专注于自己的职责。 3. 构建IOC容器:设计一个容器来管理对象的生命周期和依赖关系。...

    ASP.NET源码——Xluo大型三层架构短消息系统.zip

    在这个"ASP.NET源码——Xluo大型三层架构短消息系统.zip"压缩包中,我们可以深入学习到如何使用ASP.NET实现一个大规模的、分层的短消息系统。 首先,我们要理解什么是三层架构。三层架构是一种常见的软件设计模式,...

    ASP.NET源码——BMW业务模型及代码生成器V1.3 开源版.zip

    1. 数据库模型生成:根据数据库结构自动生成实体类,这些类可以直接映射到数据库表,如Entity Framework中的DbContext和Entity类。 2. 数据访问层(DAL)代码生成:创建对数据库进行CRUD操作的接口和实现,如...

    ASP.NET源码——CodematicS3三层结构示例项目.zip

    - **实体类(Entities)**:这些是业务对象的模型,它们代表数据库中的表或视图。通常,每个实体类对应数据库中的一张表。 - **接口(Interfaces)**:为了实现解耦,业务逻辑层通常会定义与数据访问层交互的接口,...

    ASP.NET源码——[学校班级]HydrogenCms(采用MVC开发).zip

    总结,这个ASP.NET源码项目"HydrogenCms"是一个基于MVC架构的学校班级管理系统,涵盖了模型-视图-控制器的设计模式、数据库交互、业务逻辑和用户界面的构建。通过分析和学习这个项目,开发者可以深入了解ASP.NET MVC...

    数据库课程设计——人事管理系统.zip

    - ORM(Object-Relational Mapping):如Hibernate、MyBatis等,将对象模型映射到关系型数据库,简化数据库操作。 5. 软件工程方法 - 需求分析:明确系统功能需求,如员工信息管理、考勤记录、薪资计算等。 - ...

    ASP.NET源码——[新闻文章]Asp.net3.5 MVC入门之文章管理源码.zip

    在 `DbContext` 类中,你可以看到数据模型与数据库表之间的映射,以及查询和保存数据的方法。 8. **验证和错误处理**:ASP.NET MVC 提供了内置的验证机制,如数据注解验证。在模型类中,可以添加验证属性来确保输入...

    Struts2与Hibernate3的集成开发案例——网上书店

    3. **实体类创建**:根据数据库表创建对应的Java实体类,这些类将被Hibernate3用来映射表记录。每个实体类通常包含属性(对应表字段)和getter/setter方法。 4. **Hibernate配置**:编写Hibernate的配置文件...

    ASP.NET实例开发源码——简单三层购物网站源码v1.0.zip

    这个实例开发源码——简单三层购物网站源码v1.0,是基于ASP.NET技术实现的一个电商系统模型,它展示了如何在实际开发中应用MVC(Model-View-Controller)架构和三层架构原则。 三层架构是一种软件设计模式,它将...

    MVC完整示例Northwind.rar

    - **MVC模式**:这是一种设计模式,将应用程序分为三个主要组件——模型、视图和控制器。模型处理数据和业务逻辑,视图负责显示数据,而控制器接收用户输入并协调模型和视图的交互。 - **Northwind数据库**:这是一...

    MVC学习源码(方便快捷的MVC入门提高资料)

    在提供的压缩包文件"MVC"中,很可能是包含了示例代码,如配置文件、控制器类、模型类和视图文件,这些可以帮助初学者了解MVC架构如何在实际项目中工作。通过研究这些代码,你可以看到如何在Java中实现MVC模式,以及...

    企业级系统架构的理解

    业务逻辑层关注业务算法,但完整的业务层还应包含业务实体的建模——领域模型。领域模型通过UML建模来表达,包括实体的属性、方法和它们之间的关系。此外,业务层还需要处理DTO到领域模型的转换,这通常由DTO映射层...

    .Net代码生成器V2.17 源码发布,自动生成三层架构代码。

    - 基于数据库表的自动映射:根据数据库中的表结构,自动生成对应的实体类,减少手动创建的工作。 - 自定义模板:允许开发者定制代码生成模板,以满足特定的编码风格或项目需求。 - 代码优化:生成的代码可能已经过...

Global site tag (gtag.js) - Google Analytics