`
biaoming
  • 浏览: 270683 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

重构DAO设计计划

阅读更多
目前我所写的DAO存在以下问题:
1、DAO类的繁多,很多设计都是一个entity对应一个DAO
2、需要复杂时DAO的method庞大,维护困难
3、当业务逻辑改变时,DAO需要同时修改两个类文件(接口和实现类)
4、DAO越多维护越复杂

出于上以问题,需要对DAO重新设计
1、统一DAO,减少DAO类的数目,DAO包暴露的接口稳定且易于扩展新的查询
2、减少dao接口的method
3、可以动态增加dao提供的数据访问逻辑,比如增加相应的查询实现等等

重新考虑DAO设计目的
1、提供统一的存取层,以便外部框架和机制针对这一层进行特别的处理,或者外部可以提供这一层次上的超类为你服务,你可以在一个明确的层次上重用别人的工作,但这不是专门针对DAO,而是分层结构自动带来的好处
2、而DAO本身的目的就是为了封装数据存取的差异性,如果你直接用这种方法来做的话,DAO有什么用,根本不需要了

开始工作。。。。
分享到:
评论

相关推荐

    设计之道.pdf

    ### 设计之道——探索软件设计的核心理念与模式应用 #### 引言 在软件开发领域,“设计之道”不仅是关于如何创建高效、灵活的系统结构,更关乎如何在不断变化的需求和技术环境中保持竞争力。本书《设计之道》深入...

    《智慧城市轨道交通 信息技术架构及网络安全规范第1部分:总体需求》标准解读.pdf

    同时,提出数据共享平台的概念,强调横向到边、纵向到底的设计思路,将各轨道交通应用系统统一纳入云平台进行整体设计,采取分级分域的管理方式,并通过云服务的IaaS、PaaS、SaaS三层架构设计,促进资源的融合和统一...

    北京城建设计研究院发展战略研究.doc

    - 国家政策支持: “发展城市轨道交通”首次被纳入国民经济第十个五年计划,表明政府对这一领域的重视。 - 快速增长: 中国多个城市已建成和在建城市轨道交通线路,预计未来20年将有显著增长,总投资额巨大。 - ...

    二十三种设计模式【PDF版】

    在真正可复用的面向对象编程中,GoF 的《设计模式》为我们提供了一套可复用的面向对象技术,再配合 Refactoring(重构方法), 所以很少存在简单重复的工作,加上Java 代码的精炼性和面向对象纯洁性(设计模式是 java 的...

    星链:全球卫星互联网时代的传播体系重构.pdf

    星链计划通过发射大量的卫星到低地球轨道(LEO),建立起一个覆盖全球的高速互联网网络。这一项目的实施,标志着人类在构建全球卫星互联网时代迈出了重要的一步。 描述中提到的埃隆·马斯克(Elon Musk),是SpaceX...

    道路景观与规划-24-方案文本.尖沙咀地区改善计划—ARUP.rar

    1. **交通规划**:ARUP方案会涉及尖沙咀的交通流线设计,包括道路网络优化、公共交通系统改善、行人及非机动车道的设置,旨在提高道路容量,减少拥堵,同时保障行人安全和便捷。可能包含智能交通系统的应用,如实时...

    高清+目录 MySQLDBA修炼之道 Good!!

    书中的内容涵盖了从基础到高级的各种主题,包括数据库设计、性能调优、备份恢复、高可用性架构以及安全性等多个方面。 在MySQL DBA的道路上,首先需要理解的是数据库的基本概念,如数据模型(关系型、非关系型)、...

    敏捷之道第1期 PDF

    它包括一系列实践,如结对编程、简单设计、持续集成、重构和规划游戏等。 4. **Kanban方法**:Kanban系统源于丰田生产系统,强调可视化工作流程、限制在制品(WIP)数量和持续改进。在软件开发中,Kanban板用于跟踪...

    2009软件设计师

    **重构**是面向对象设计中的一种重要技术,它是指在不改变软件的外部行为的前提下,改进其内部结构的过程。重构有助于提高代码的可读性和可维护性。 因此,根据题目描述,正确答案是**C.重构**。 #### RUP中的角色...

    软件工程12道复习题(2013~2014-2)(1).pdf

    【第一题】 知识点:需求获取与分析 在软件工程中,需求获取是软件开发的初始阶段,它涉及...以上就是软件工程12道复习题涉及的知识点,涵盖了软件开发的各个阶段和重要概念,对全面理解和掌握软件工程原理至关重要。

    后端考公设计的资料笔记记录

    该课程被细分为四个主要部分:图形推理、类比推理、定义判断和逻辑判断,并计划通过8次课程来完成方法精讲阶段的教学任务。这一阶段的目标是让考生熟悉江苏省公务员考试中的必考题型和高频考点,为后续阶段的学习...

    2009年上半年软件设计师上午试题.pdf

    重构可以简化构件的设计,使其更符合面向对象的原则,如封装、继承、多态等。 ### 软件开发过程的角色 在软件开发过程中,“谁做”通常指的是一系列角色,包括项目经理、分析师、设计师、程序员、测试人员等。每个...

    0 bug——CC++商用工程之道(样章)

    《0 Bug——CC++商用工程之道》是一本深入探讨如何在实际工程开发中实现高质量、无bug编程的专业书籍。样章通常会展示书籍的核心理念、关键技术和实践策略,旨在为读者提供一个对全书内容的初步理解。在这个压缩包中...

    软件工程思想

    同时,它还阐述了软件危机的产生原因和解决之道,强调了软件工程方法论对于提高软件质量、控制成本和缩短开发周期的关键作用。 **第二章:软件生命周期** 此章详述了软件从需求到废弃的完整生命周期,包括需求获取...

    pragmatic programmer

    书中讨论了常见的设计模式,如工厂模式、观察者模式等,以及重构的重要性,鼓励程序员通过重构改进代码结构,保持代码的灵活性和可扩展性。 5. **软件生命周期管理**: 提出软件开发是一个迭代的过程,强调需求...

Global site tag (gtag.js) - Google Analytics