`

技术架构的选择-基础框架

 
阅读更多

技术架构的选择-基础框架

      入职后不久,我们研发部展开了一次又一次的头脑风暴。

      会上各抒己见,气氛良好,并且在主持人的引导下,逐一敲定,并落实到人头上。不过在基础框架 这一块显得相当棘手,也是争论最多的一块,由于这部分是技术体系的基础,因此针对基础框架的选择,决定在让同志们利用2个月的时间再次好好调研后再次碰头。这一天终于来了。

      2011年9月。是SSH、SSI、还是SSHI?实际上就是在选择是用HB还是iBatis。

 

觉得要采用iBatis的论点如下:

我仍然还是觉得用HB不如用iBatis,CSDN主持人也曾经表示,如果你们公司没有HB大牛那就不要用HB。这个东西太难上手了,光看指南就得很长时间。iBatis就不同,直观大方,易上手,而且还安全。

 

对对,我也建议废掉HB,iBatis易于上手,拿来指南不到一个礼拜就可以掌握了。而且,iBatis在sql文优化方面也很直接,易触摸掌握。
 
说到sql,一般情况下iBatis的效率要比HB高。HB用得不好的话经常出现内存溢出的问题,iBatis基本不会出现该问题。

 

我选择用iBatis,主要是写的SQL语句,基本可以直接拿到数据库上去执行测试。
 
我选择用iBatis,虽然Hibernate所谓的OO,但是有多少系统是真正使用的OO方式来设计和实现的呢。
 

 

觉得要采用HB的论点如下:

Hibernate 对于熟悉它的人,是一样非常好的工具,Hibernate 的作者也说过,只要是 Hibernate Team 的人,做出来的系统肯定性能不会差~ 但是不熟悉的人就很难说了~ 我建议使用它的人还是读读它的代码,别盲目使用。很难相象一个程序员,对它的工具做了什么都不知道,还能用好它。
我觉得,只是我们以前没有用好,造成了系统性能有问题,刚才说的内存溢出什么的。因此这不是HB本身的问题,是我们使用者的问题!如果说HB难所以我们使用的时候出现了问题,那么你怎么能够保证iBatis使用的时候不会出现问题呢
 
不管是ibatis还是hibernate归根结底还是对数据库访问。用得好的话,就算不考虑cache hibernate是不会比ibatis慢的。
 
hibernate查询方面提供了多种查询方式,如criteria,hql,native sql,只要灵活应用,基本上能涵括数据库查询的需求了
 
用iBatis能做的东西hibernate都能做,可是iBatis却不是面向对象的。
 
使用OO,在维护时才会发现好处;使用框架,也是在维护时才会发现好处。越是大项目越是如此,面向过程使得过程间难于解耦,系统扩展起来比较痛苦,咱们上一个项目就是面向过程的,现在改为面向对象了。
 

觉得两者都行的论点如下:

我hibernate用了2年,使用过程中也碰到过很多乱七八糟的问题,或者解决或者绕过了。ibatis看了一个晚上,大致了解。如果让我在ibatis和hibernate都不熟的基础上对项目的orm框架做选择,我应该会选择ibatis而不是hibernate。不过在对hibernate比较熟悉的情况下确实是选择hibernate开发效率会高。
 

待续。。。

 

分享到:
评论
1 楼 songsong6615 2012-10-29  
深有体会啊

相关推荐

    软件架构---构建可持续软件架构的模式语言

    - **技术架构支撑功能架构**:技术架构为实现功能架构提供了必要的技术支持,例如通过选择合适的数据库技术来支持数据存储和检索的需求。 - **相互制约与协同**:两者之间存在着密切的互动关系。一方面,功能架构的...

    企业架构框架-TOGAF

    ADM方法论包括了八个阶段:架构愿景、业务架构、信息系统架构、技术架构、机会及解决方案、迁移规划、实施治理和架构变更管理。这些阶段为组织提供了一条清晰的路线图,帮助组织构建和维护一个灵活且可扩展的企业...

    企业架构框架-TOGAF

    - **阶段D:技术架构**:选择合适的技术基础设施。 - **阶段E:机会及解决方案**:识别和评估潜在的机会和解决方案。 - **阶段F:迁移规划**:规划实现架构目标所需的迁移路径。 - **阶段G:实施治理**:监督架构的...

    java架构师-150G

    此资源需要有java基础的人才能看懂,里面内容很丰富,资源包括分布式框架 缓存数据库 权限框架 还有一些项目,共有差不多150G左右,需要自己找相对的资源,

    架构探险-----从零开始写javaweb框架.pdf

    然后基于传统 Servlet 框架搭建一款轻量级 Java Web 框架,一切都是从零开始,逐个实现类加载器、Bean 容器、IoC 框架、MVC 框架,所涉及的代码也是整个框架的核心基础。为了使框架具备 AOP 特性,从代理技术讲到 ...

    微服务架构的基础框架选择.pdf

    微服务架构的基础框架选择是一个关键决策,涉及到项目的技术栈、维护成本和长期发展。本文将对比分析两个热门的微服务框架——Spring Cloud和Dubbo,分别从背景、社区活跃度和架构完整度三个方面进行深入探讨。 ...

    系统架构方法 - 基础篇.pdf

    框架与架构的区别在于,框架是一种预定义的软件结构,可以作为构建特定应用的基础,而架构则更侧重于整个系统的宏观设计。架构设计的目标包括控制复杂性、支持业务目标、促进团队协作、优化开发流程,以及满足迭代...

    源码-可伸缩服务架构-框架与中间件.zip

    在IT行业中,构建可伸缩的服务架构是现代企业级应用的关键。"源码-可伸缩服务架构-框架与中间件.zip"这个压缩包显然包含...通过研究这些源码和框架,不仅可以提升技术能力,还能为实际项目中的架构设计提供参考和灵感。

    【ThoughtWorks】现代企业架构框架白皮书-V4-2021.pdf

    4. **技术架构**:着重于选择合适的技术栈以支撑上层的业务与应用架构,包括基础设施、中间件以及相关的技术策略。 白皮书通过提出现代企业架构框架,提供了一种应对数字化转型、业务平台化、智能化和云计算挑战的...

    JAVA SMART系统-系统框架设计与开发(源代码+论文)(1).zip

    它将涵盖系统架构的选择理由、关键技术的介绍、问题解决策略以及未来改进的方向。通过论文,开发者可以了解到理论与实践相结合的思考过程,提升自己的系统设计能力。 五、学习与实践 这个资源包对于学习Java系统...

    ThoughtWorks现代企业架构框架白皮书_V4.pdf

    而技术架构元模型则可能集中在支撑业务和应用的技术基础设施,包括硬件、软件、网络、通信协议以及技术标准等。 文档的“再提业务平台化”部分强调了业务平台化是本轮数字化转型的一个重要趋势。通过业务平台化,...

    4a平台技术架构

    4A平台技术架构,即账号(Account)、认证(Authentication)、授权(Authorization)和审计(Audit)平台,是目前业界广泛认可的一种安全服务基础设施。它通过集中的账号管理、认证管理、授权管理和审计管理,为...

    企业IT技术架构规划方案 集团公司IT技术架构规划方案.pptx

    技术架构规划的内容框架包括业务架构、应用架构、信息架构和技术架构四个方面。业务架构是指集团公司的业务流程和组织结构,应用架构是指集团公司的应用系统和数据流程,信息架构是指集团公司的信息资源和数据管理,...

    架构探险-从零开始写Java Web 框架

    通过阅读《架构探险-从零开始写Java Web框架》,开发者可以提升对Java Web开发的整体理解,从底层原理到实践应用,为构建自己的Web框架打下坚实基础。同时,这也是一种很好的学习方式,通过动手实践来深入掌握复杂的...

    20计科1班-202035010111-冯昭雄-web框架技术大作业.rar

    标题中的“20计科1班-202035010111-冯昭雄-web框架技术大作业”表明这是一个关于web框架技术的大学课程作业,由学生冯昭雄完成,可能涵盖了2020学年计科1班的相关教学内容。这个作业可能包括了理论学习和实践应用两...

    健康项目-powerdesigner使用-前端框架-项目架构雏形

    在IT行业中,项目搭建是开发过程中的重要环节,它涉及到技术选型、框架选择以及项目结构的规划。本文将详细探讨“健康项目”的前期准备,包括PowerDesigner的使用、前端框架的选择以及项目架构的初步设计。 首先,...

    架构探险-从零开始写javaweb框架

    《架构探险:从零开始写Java Web框架》首先从一个简单的 Web 应用开始,让读者学会如何使用 IDEA... 《架构探险:从零开始写Java Web框架》适合具备 Java 基础知识,熟悉 Web 相关理论,并想成为架构师的程序员阅读。

Global site tag (gtag.js) - Google Analytics