`
luopan68
  • 浏览: 48768 次
社区版块
存档分类
最新评论

如何实现一个快速开发框架之crud

阅读更多
如何实现一个快速开发框架之crud
我们在《一个优秀框架的评判标准和方向》说了,一个优秀的企业级开发框架——以用户需求为向导的框架——应该至少实现crud,workflow,report三个范畴的常见需求的快速开发。
Crud范畴的快速开发具体怎么做呢?这里提供一种我的实现方式,它采用了hibernate这个orm框架。
Crud;说白了就是一个实体对象的增、删、改、查。是我们最常见的功能。做Crud的时候oo的思想特别有用。
通过分析得到我们的实体对象和它们之间得关系。那么我们的功能无外呼就是维护实体对象和对象之间的关系。
具体怎么来阐述我的思路呢?
页面是功能得直接表现。我们就从页面说。(实体对象和对象之间的关系是本质,而页面是本质的体现。不同实体的不同关系,在页面上会有一定的表现。这个就上是生病了去看医生,医生通常是从你的表征上来看你得了什么病。)
举个例子:
例如:多对一的关联关系:
如班级和系别的关系,多个班级属于一个系。关系得主控方通常在多得一方。(具体hibernate怎么配置请参看《我的O/R MAPPING (HIBERNATE)方法小结》)那么我们的页面就是这样:

上面有一个选择,点击后弹出系别列表,可以选择系别。当然也可以是一个下拉框。可以让程序员根据需要用tag方便替换。

又如:多对多关系(或多对一关系主控方在一的一方)
如学生选客,学生和课程多对多,主控方在学生,这个时候我们的课程一方就可主动声明” inverse="true"” (具体hibernate怎么配置请参看《我的O/R MAPPING (HIBERNATE)方法小结》)那么页面有可能是这样:

下面有一个多选框(当然可以是其他元素,可自由替换)来维护多对n的关系。在维护学生的时候维同时维护和课程之间的关系。但是对于课程的维护就无需维护关系了,即课程的维护页面就没有那个多选框了。

再如:聚合关系
课程和课程安排是聚合关系,课程安排组成了课程,课程安排离开了课程不存在意义(这通常说明课程安排不会有自己单独的增,删,改,查页面,而对它得增,删,改,查通常通过课程来完成)这个时候要没课程安排是一个hibernate组建,也可以是一个一对多的关联关系并且同时配置cascade="all-delete-orphan"/"all"和fetch="join" lazy="false"。也就是说查看课程通常同时查看课程安排,课程安排的操作通过课程的操作级联来完成。这个时候页面通常是这样:
  • 大小: 10.9 KB
  • 大小: 4.8 KB
  • 大小: 2.3 KB
0
0
分享到:
评论

相关推荐

    NFine快速开发框架.zip

    总的来说,NFine快速开发框架是一个全面的开发工具,它简化了开发流程,提升了开发效率,尤其适合于需要快速构建复杂业务系统的项目。通过熟练掌握和运用NFine,开发者可以更好地应对企业级应用开发的挑战。

    SSH框架CRUD小例子

    Spring框架则是一个全面的企业级应用框架,它不仅包含MVC组件,还提供了事务管理、数据访问、AOP、DI等功能。Spring的DI允许开发者将对象的创建和管理交给容器,降低了组件之间的耦合。在SSH中,Spring通常用来管理...

    dwz4j springmvc mybatis企业级快速开发框架

    "dwz4j SpringMVC MyBatis企业级快速开发框架"是一个集成的开发环境,旨在简化Java开发者在企业级项目中的工作流程,特别是对于快速实现业务逻辑的增删改查(CRUD)以及后台管理功能。这个框架结合了三个核心组件:...

    S2SH-CRUD整合框架

    Spring是一个全面的企业级应用框架,它提供依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP),有助于简化Java EE应用程序的开发。在SSH2 CRUD框架中,Spring主要负责管理...

    NFine快速开发框架源码

    DX0213-NFine快速开发框架源码这个压缩包文件包含了NFine框架的所有源代码,对于想要研究和定制NFine的开发者来说,这是一个宝贵的资源。通过对源码的学习和实践,开发者可以掌握框架的内部结构,对其进行二次开发或...

    快速crud开发框架,甚至于一行代码不用敲.zip

    GfEasyAdmin是一个高效且便捷的企业级CRUD(创建、读取、更新、删除)开发框架,它极大地简化了后端开发过程,甚至可以让开发者在某些场景下无需编写一行代码就能完成基本功能的搭建。这个框架主要针对快速构建企业...

    MVC NFine快速开发框架源码

    NFine是一款基于.NET平台的开源快速开发框架,它集成了MVC模式,旨在简化开发过程,提高开发效率。该框架提供了以下关键特性: 1. **权限管理**:NFine提供了完善的权限控制机制,包括角色、用户、菜单、操作等权限...

    NFine快速开发框架c#

    NFine快速开发框架是一款基于C#编程语言,利用.NET MVC(Model-View-Controller)架构、Entity Framework(EF)数据库访问技术以及SQL Server数据库的高效能Web应用开发框架。此框架充分利用了Bootstrap前端框架,...

    一种Java快速开发框架的设计和实现.docx

    本文档将深入探讨一个名为"MiniFramework"的Java快速开发框架的设计与实现,该框架借鉴了诸如Spring、Hibernate等成熟框架的理念,旨在为开发者提供一套轻量级、高效且易于使用的开发解决方案。 【标签】:CS...

    flex 入门之CRUD

    本文介绍了如何使用Flex和BlazeDS快速构建一个支持CRUD操作的RIA应用。通过实际动手操作,读者不仅能够学会Flex编程的基础知识,还能了解如何与服务器端进行高效的数据交互。随着技术的不断发展,Flex和BlazeDS的...

    快速开发API服务的框架

    这个框架的独特之处在于它能够让开发者无需手动编写接口和文档,就能实现基本的CRUD(创建、读取、更新、删除)操作,以及更复杂的查询和简单的事务处理。 APIJSON的自动化特性主要体现在以下几个方面: 1. 自动...

    Grocery CRUD是一个PHP Codeigniter框架库,可以创建一个完整的功能CRUD系统

    Grocery CRUD是一个强大的PHP开发工具,专为CodeIgniter框架设计,用于快速构建全面的创建、读取、更新和删除(CRUD)操作。它的核心优势在于,它极大地简化了数据库交互过程,允许开发者在无需深入JavaScripts或CSS...

    一个基于 SpringBoot 的快速开发框架,内置代码生成器.zip

    而“一个基于SpringBoot的快速开发框架,内置代码生成器.zip”正是这样一个工具,旨在帮助开发者加速毕业设计或其他项目开发进程。 首先,这个框架的核心在于SpringBoot。SpringBoot简化了Spring应用的初始搭建和...

    NFine快速开发框架

    NFine快速开发框架是一款专为IT开发者设计的高效、便捷的开发工具,旨在简化企业级应用的构建过程,提高开发效率。该框架以其强大的功能、易用性以及高度可定制化的特点,在众多开发框架中脱颖而出。 NFine的核心...

    NFine快速开发框架 ASP.NET MVC+EF6+Bootstrap开发框架

    NFine快速开发框架结合了这些技术,为开发者提供了一个完整的解决方案。框架可能包括以下组件和功能: 1. 用户权限管理:提供角色、用户、权限的管理,支持细粒度的权限分配,确保系统安全。 2. 数据字典管理:对...

    Java SSH2框架的CRUD经典例子

    通过这种方式,可以快速构建一个具有完整CRUD功能的Web应用。 在`ssh2demo`这个压缩包中,包含了整个项目的源代码和配置文件。开发者可以查看Action类(如`AddAction`、`DeleteAction`等),了解如何根据用户请求...

    GiiwaweJavaWeb快速开发框架

    【Giiwa Java Web快速开发框架】是一款专为...总之,Giiwa Java Web快速开发框架致力于简化开发流程,提高开发效率,是Java Web开发者的一个有力工具。通过学习和掌握Giiwa,你可以更有效地构建出高质量的Web应用程序。

    Java开发 快速开发框架项目源码

    【Java开发 快速开发框架项目源码】是基于Java EE(J2EE)平台的高效能、轻量级的快速开发框架,旨在简化企业级应用的开发过程,提高开发效率。SSM架构,即Spring、Spring MVC和Mybatis的组合,是Java Web开发中的...

Global site tag (gtag.js) - Google Analytics