1.其实用spring最好的地方就是实现代码的复用。
首先spring的设计原则是非侵入性的,就是实际业务逻辑代码中感觉不到spring框架的存在,spring只是在其中起到一个实例产生的作用,然后把实例分配给需要的对象。这种设计的好事就是可以随时随地的把某个业务逻辑很轻松的从整个系统中抽离出来再在无任何修改的情况下用到其他系统中去。
然后就是切面的编程,这种设计是灵活的操作织入,例如你的某个业务逻辑是执行存款,存款这个业务之前之后都应该有某些附加操作,例如用户登录,检查余额,记录存款日志信息,但是这些不能够放在存款主业务当中,这个时候就可以用面向切面的方式灵活织入到存款业务中,但是这个过程有不需要改变原存款业务代码和逻辑实现。如果将来某个时候这些副业务更改,例如我不想记录存款日志信息,但是我又要加入打印出存款细节的附加操作,这个时候只要把记录日志剥离出来,再植入打印功能。同样不需要更改源代码。
spring这些设计的终极目标就是避免同样或者相似功能在不同系统中的重复开发而设计的。

2.开闭原则:对扩展开放,对修改封闭,这是设计框架的原则,换句话说就是把耦合度降到最低。

Spring的依赖注入就是这一方面的最好体现。使我们可以实现分层开发
通过AOP,可实现声明式事务,统一的日志管理等等。

3.

(1)轻量级的框架
(2)非侵入性的
(3)可以整合其他的框架,比如Struts, Hibernate等,使一个全方位的应用程序框架
(4)可以提供事务管理

(5)实现松耦合(比如struts各层耦合度很高)

转载于:https://www.cnblogs.com/wenchuanchuangz/archive/2012/11/07/2759230.html

Spring好处—总结相关推荐

  1. 再品Spring Ioc 和 Aop

    文章目录 Spring好处 IOC 基于XML和基于注解开发 基于XML开发 基于注解开发 配置类 扫包+注解 依赖注入 AOP 写在前面,这篇文章写的时候我的SSM已经学过一遍了,回头来看真的受益匪 ...

  2. Spring5框架-学习总结(结合个人理解)

    Spring框架 ps:这个是我看狂神spring教程时,一边看老师的,一边结合自己的思想写的一篇总结.方便日后回顾用. 1.Spring 1.1 简介 Spring : 春天 -->给软件行业 ...

  3. 使用Spring框架的好处

    转自:https://www.cnblogs.com/hoobey/p/6032506.html 在SSH框假中spring充当了管理容器的角色.我们都知道Hibernate用来做持久层,因为它将JD ...

  4. 使用Spring框架的好处(转帖)

    在SSH框架中使用Spring的好处 在SSH框假中spring充当了管理容器的角色.我们都知道Hibernate用来做持久层,因为它将JDBC做了一个良好的封装,程序员在与数据库进行交互时可以不用书 ...

  5. Java教程分享:使用Spring框架能带来哪些好处?

    Spring框架是一个为Java应用程序的开发提供了综合.广泛的基础性支持的Java平台.Spring帮助开发者解决了开发中基础性的问题,使得开发人员可以专注于应用程序的开发. Spring框架本身亦 ...

  6. 使用Spring 框架能带来哪些好处?

    下面列举了一些使用Spring 框架带来的主要好处: 1.Dependency Injection(DI) 方法使得构造器和JavaBean properties 文件中的依赖关系一目了然. 2.与E ...

  7. 前谷歌资深架构师:真正搞懂spring底层到底有什么好处?

    Spring 框架,作为一个非常优秀的轻量级容器,在企业级项目开发中非常受欢迎,Spring 框架也早已成为 Java 后端开发事实上的行业标准,如何用好 Spring ,也就成为 Java 程序员的 ...

  8. 2、使用Spring框架能带来哪些好处

    下面列举了一些使用Spring框架带来的主要好处. (1)Dependency Injection(DI)使得构造器和JavaBean properties文件中的依赖关系一目了然. (2)与EJB容 ...

  9. 什么是spring框架?spring框架的好处?

    spring框架是一个轻量级的DI/IOC和AOP容器的开源框架. 通俗来讲,spring好比一个罐子,罐子里可以装很多东西进去.在spring里面每个对象就是个bean(豆子),把豆子放到罐子里面, ...

最新文章

  1. 英伟达颠覆CPU!Arm架构专为AI而生,性能超x86十倍
  2. MongoDb数据库面试整理
  3. ZenHub已集成于GitHub企业版
  4. vue-cli 3.0 跨域请求代理
  5. Zblog极致·APP下载单页主题
  6. 【noi】植物大战僵尸
  7. 云服务器如何实现装虚拟机_如何在服务器上安装虚拟机呢?服务器虚拟机安装教程...
  8. 2017-2018-1 20155313 《信息安全系统设计基础》第五周学习总结
  9. CXF之jaxws:endpoint对spring bean的引用
  10. Phoenix Tips (13) 统计收集
  11. Linux 系统常用命令
  12. php学生成绩管理系统完整源代码,PHP学生成绩管理系统
  13. 总结:xshell的一些使用技巧
  14. 你居然只知道蓝绿发布?今天教你全链路灰度~
  15. Twitter首席科学家离职 高层动荡仍持续
  16. excel根据空格把数据分列
  17. a59s刷机包卡刷 oppo_OPPO A59s root教程_OPPO A59s卡刷获取root权限的方法
  18. Oracle数据库的基础
  19. Win10 S尽然如此对待Linux分支
  20. 计算机仿真氢光谱实验,氢氘灯光谱 实验报告

热门文章

  1. java 对象的强制类型转换
  2. 安装问题的审计(产生漏洞,抓包)
  3. nlogn最长单调递增
  4. 图像处理与计算机视觉经典文章
  5. ubuntu下vim配置成c++开发编辑器
  6. css属性选择器,[],=, ~=, ^=, ~=, $=, |=等符号含义
  7. Echarts数据可视化series-heatmap热力图,开发全解+完美注释
  8. Echarts数据可视化legend图例,开发全解+完美注释
  9. json标注工具与labelme安装
  10. ThinkpadT470接通电源开机显示电量0%充不进电且电源指示灯不亮的解决办法