从2012年到现在使用spring已有4个年头。
记得当时发了个贴
http://www.iteye.com/topic/865387
还吵来吵去的。
现在再看看这些框架的作用,其实我所用到的其实是简单的思想,即:
积木式的程序设计
我一直研究OO方法,现在可以确认,mvc、spring、hibernate,在OO的层面,大多数情况,只是用到了封装,这是简单的OO应用。
所谓贫血模型,不过是把经过封装的过程,硬往OO上靠而已。那已不是OO,用好了可以构建出封装良好的积木,在一定范围内重用,同时带来软件易于修改、分工、稳定等好处。
那不OO就不好吗?
对于mvc、spring、hibernate 的体系。在应用的层面,显然能做到积木式的程序设计,就行了。再弄其他的就是画蛇添足了。
那OO没用吗?
当然不是,在具有复杂事物表示的环境里,对事物本身的抽象是解决问题的关键,OO是必然。
那Spring有什么用处呢?
1. 提供通用的现成的搭建积木式软件的解决方案。
2. 提供辅助工具。
IOC和AOP为实现上述目的,提供了支持。
在这里回答一下4年前我提的问题:
1)不用Spring时,你强烈的感到需要IOC和AOP了吗?
不会感到需要IOC和AOP的,因为这些是实现积木程序设计的手段,它不是直接可用的方案,而Spring是一个利用IOC和AOP搭建积木式程序的方案。
2)程序不用Spring的影响是什么呢?
1. 软件架构方案需从头做起。 项目人员需从头学习。
2. 缺少的Spring的辅助工具,需要开发。
以前我提到的Spring的软件解耦的作用,其实质是搭建积木式的程序。用解耦来描述太宽泛了,实际上解耦的问题无处不在,而Spring只是用在程序架构上的解耦。
mock 软件测试,在需要时,是可以使用的。(目前未用过)
分享到:
相关推荐
全书分22章,内容涵盖了Spring的核心机制、依赖注入、资源访问、AOP框架、事务框架、整合Hibernate、DAO支持、JDBC支持、MVC框架、整合第三方表现层技术、整合第三方MVC框架、远程访问支持、EJB访问和实现、Spring对...
Struts、Hibernate和Spring是Java开发中非常著名的三个框架,它们分别是MVC(Model-View-Controller)架构模式、持久层管理和依赖注入的代表。在这个名为"Struts+Hibernate+Spring 小例子"的项目中,开发者提供了一...
3. **Spring MVC**:作为Spring的一部分,Spring MVC是用于构建Web应用程序的模型-视图-控制器框架。在“spring实例.zip”中,你可能会找到DispatcherServlet的配置,Controller类,以及视图解析器的相关配置,这些...
Spring框架是Java开发中的一个核心组件,尤其在企业级应用中广泛应用。它是一个开源的、轻量级的、全面的Java应用开发框架,主要解决应用程序的配置和管理问题。Spring的核心特性是依赖注入(Dependency Injection,...
在Spring框架中,还有许多其他的模块,如数据访问/集成(包括JDBC、ORM支持如Hibernate)、Web层的支持(如MVC框架)、任务调度、缓存等。这些模块的设计和实现都体现了Spring的灵活性和可扩展性,允许开发者根据...
7. **MVC框架**:Spring MVC是Spring用于构建Web应用的模块,提供模型-视图-控制器架构。在Spring3.1.2中,它引入了更多优化,如异步请求处理、RESTful支持和模板引擎集成,提高了Web应用的开发效率。 8. **Spring ...
Spring的模型-视图-控制器(MVC)框架灵活易用,IoC与AOP的集成使得代码结构更加清晰。更重要的是,Spring与其他许多流行产品有着紧密的集成,形成了一种整体大于部分之和的效果,尽管难以用一句简洁的话来概括,但...
其次,Spring MVC是Spring Framework中的Web层组件,用于构建高性能的Web应用程序。在4.1.1.RELEASE中,Spring MVC引入了更好的异常处理机制,支持自定义异常处理器,使得错误页面的呈现更为优雅。此外,该版本还...
除此之外,Spring还包含了ORM(对象关系映射)支持,如集成Hibernate、MyBatis等,以及事务管理、Web MVC框架、数据验证等功能,构建了全面的企业级应用开发环境。 总的来说,Spring通过其灵活的设计和强大的功能,...
4. **MVC框架**:Spring MVC是Spring提供的用于构建Web应用的模型-视图-控制器框架,它使Web开发更加简洁,解耦了业务逻辑和表现层。 三、项目实践——2020-05-otus-spring-Lovchikova 在该项目中,Lovchikova Е...
3. Java 编程相关的开源框架:作者学习了 Struts、Spring 和 Hibernate 这三个 Java 编程相关的开源框架,了解了它们之间的关系和应用。Struts 代表表示层,Spring 代表业务逻辑层,Hibernate 则代表持久层。 4. ...
程序开发技术框架: SpringMVC + Spring + Hibernate + Bootstrap 该系统分为前台后台,用户和管理员 首页界面显示推荐全国著名的旅游景点,点进每个旅游景点里面该旅游景点的具体风貌展示, 旅游天数,旅行最佳...
在这个项目中,CRM系统是基于SSH(Spring、Struts、Hibernate)框架构建的,这是一个在Java开发领域广泛应用的开源技术栈。 Spring框架是整个应用程序的核心,它提供了依赖注入(Dependency Injection)和面向切面...
【SSH整合开发】是IT行业中一个重要的概念,主要指的是Spring、Struts和Hibernate这三大开源框架的集成应用。Spring作为核心容器,负责管理对象(Bean)的生命周期和依赖注入;Struts则是MVC(Model-View-Controller...
以及Spring框架,这是一个全面的企业级应用框架,提供了AOP、DI、事务管理等功能。 4. 实习感受 通过实习,学生们不仅提升了专业技能,还增强了人际交往和团队合作的能力。他们有机会将理论知识应用于实际问题解决...
- 旨在评估应聘者对于Spring框架高级特性的理解和应用能力。 **12. 项目规模** - 询问应聘者以往参与的项目规模。 - 旨在了解应聘者处理不同类型项目的经验。 #### 软件项目经理 **1. 项目架构与组织结构** - ...
同时,结合Spring和Hibernate等框架,可以构建更复杂的MVC架构,实现业务逻辑和数据持久化的无缝集成。 总之,Struts框架以其简单易学、强大的功能和广泛的社区支持,为Java Web开发提供了极大的便利。通过不断的...
本项目是一款基于B/S模式的租房管理系统,采用Struts-Spring-Hibernate框架,并加入DWR框架,实现了MVC多层架构。 **关键技术栈:** - **Struts:** 控制层,处理用户请求。 - **Spring:** 提供依赖注入机制,简化...
* Struts、Hibernate、Spring 框架项目开发 * i18n 国际化应用、ajax 技术、strust 技术、ExtJS 技术 * Java 应用服务器进行 Java 软件开发:Apache Tomcat * 主流的 Java IDE 工具,如:Eclipse、Myeclipse 二、...
本系统采用的是Java J2EE平台,结合Struts、Spring和Hibernate(SSH)三大框架,以及Ajax和jQuery技术,实现了后台数据处理与前端交互的高效联动。 Java J2EE(Java Platform, Enterprise Edition)是Oracle公司...