1.Spring Ioc+Spring AOP+Spring服务抽象:
Spring Ioc,借助于依赖注入设计模式,使得开发者不用理会对象自身的生命周期及其关系,而且能够改善开发者对模式的使用。借助于Spring Ioc,不仅能使应用中对象的关系更加清晰、一致,而且还使得一切对象可控。
Spring AOP,借助于Spring实现的拦截器,开发者 能够实现以声明方式使用企业级服务,比如安全性服务,事物服务。AOP能够合理的补充OOP技术,Spring AOP合理的补充了Spring Ioc容器。没有Spring Ioc的Spring AOP是不完善的,没有Spring AOP的Spring Ioc是不健壮的。借助于Spring AOP,开发者能够高效的使用J2EE服务。声明式、基于元数据访问企业级服务,这些都是Spring AOP的操控范围。
Spring 服务抽象,借助各种J2EE API抽象,使得开发者能够一致的使用J2EE技术,而不用管具体使用什么J2EEE API。借助于Spring服务抽象,舍得应用代码大大减少。
Spring Ioc+Spring AOP+Spring服务抽象一起形成了Spring。
2.Spring提供的控制反转Ioc和面向方向编程AOP(Aspect-Orientied Programming)插件式架构降低了应用组件间的依赖性,借助于XML定义文件,开发者能够在运行时连接不同的应用组件。
目前存在的依赖注入类型有三种:1)基于设值(setter-based)方法,2)基于构建器(constructor-based),3)基于接口(interfaced-based)注入。Spring Ioc支持前两种,即借助于Spring,开发者可以通过构建器,或者设置方法创建对象,并对对象的状态进行管理。依赖注入是Spring框架的基础,在基于依赖注入的基础上,同时还提供了其他大量的功能。
3.Spring框架的一项最基本的功能就是:充当创建对象的工厂。其具体工作步骤如下:
1)读取并分析Spring配置文件(比如,基于xml文件格式)。
2)通过java反射机制,创建并集成上述配置文件中定义的对象。
2)将创建的对象传回给开发者的应用代码。
因此开发者不用编写工厂类,其前提是需要使用Spring框架。
Spring默认是仅创建单实例的JavaBean,通过Spring配置文件中bean元素的singleton属性能够控制创建java实例的方式。
4.Spring I/O实用类
Spring在整个框架中提供了org.springframework.core.io包,供方便装载相关资源使用。core.io对xml、文件、URL都提供了很好的支持。
借助core.io包,开发者能够顺利完成应用的单元测试和集成测试。
5.Spring确信:J2EE应该易于使用;针对接口编程,而不是类;最大化使用JavaBean,以配置应用;OO设计是最为重要的,甚至比J2EE更重要;不要过度使用受查(Checked Exception);利于测试,无论是单元测试还是集成测试。这些内容,Spring表现的都很优秀,而且在持续改进。
分享到:
相关推荐
spring的集成的框架的实战学习还有学习中遇到的问题
SSM 框架整合教程:二、Spring——尚硅谷学习笔记 2022 年
此为很有人气的Gossip的学习笔记,里面深入浅出的讲解了关于spring框架的知识与学习心得,是理解spring的不可多得的好资料。 此资料为html形式,每个知识点单独列为一张html页面,阅读很方便,不需要pdf格式下的阅读...
自己学习时用的简单SSM框架项目,详情在我自己的学习笔记:Java学习笔记————SSM框架(Spring+SpringMVC+MyBatis)初学带源码中,自用
SSM(Spring + Spring MVC + MyBatis)框架作为Java开发中的黄金组合,为开发者提供了强大的技术支持和丰富的功能。本系列资料将带您从零基础开始,逐步掌握SSM的核心技术和最佳实践,助您在Java Web开发领域更上一...
一、前言 我们开发的Web系统都会有日志模块,用来...AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业
spring框架的学习笔记,以及演示代码。 Spring框架概述1、什么是Spring2、Spring框架的优点3、Spring框架体系结构Spring框架——控制反转(IOC)1、IOC介绍2、基于配置的IOC2.1、导入jar包2.2、配置文件2.3、测试3...
JavaEE学习笔记.pdf java_Java_学习笔记.pdf Java_Performance.pdf java代码效率优化.docx Java内存模型的历史变迁.docx Java在游戏服务器开发中的应用.docx java基础总结大全.txt Java开发与技术挑战——关于技术的...
SSM实战项目——Java高并发秒杀API本文包括了项目的完整流程+开发过程中遇到的各种坑的总结+学习笔记和问题扩展,如果觉得README太长,我在blog里进行了分章,这是完成后的项目,(阿里云到期了orz)项目截图秒杀列表...
学习笔记——mybatis的起步(1) 1.什么是框架? 他是我们软件开发中的一套解决方案,不同的框架解决的是不同的问题。 使用框架的好处: 框架封装了很多的细节,使开发者可以使用极简的方式实现功能。大大提高...
它实现了浏览器与服务器全双工(full-duplex)通信——允许服务器主动发送信息给客户端 websocket使用场景分享 如弹幕,网页聊天系统,实时监控,股票行情推送等 学习课程需要什么基础: javaweb基础, html...
JavaEE学习笔记.pdf java_Java_学习笔记.pdf Java_Performance.pdf java代码效率优化.docx Java内存模型的历史变迁.docx Java在游戏服务器开发中的应用.docx java基础总结大全.txt Java开发与技术挑战——关于技术的...
VS2005 ASP.NET本地化学习笔记&感受 在自定义Server Control中捆绑JS文件 Step by Step 深度解析Asp.Net2.0中的Callback机制 使用 Web 标准生成 ASP.NET 2.0 Web 站点 ASP.NET 2.0基于SQLSERVER 2005的aspnetdb.mdf...
JavaEE学习笔记.pdf java_Java_学习笔记.pdf Java_Performance.pdf java代码效率优化.docx Java内存模型的历史变迁.docx Java在游戏服务器开发中的应用.docx java基础总结大全.txt Java开发与技术挑战——关于技术的...
MongoDB学习笔记.docx mybatis原理.docx MyBatis面试专题.docx MyBatis面试专题及答案.pdf Mybatis面试题(含答案).pdf MySQL性能优化的21个最佳实践.pdf mysql面试专题.docx MySQL面试题(含答案).pdf Netty面试...
JavaEE学习笔记.pdf java_Java_学习笔记.pdf Java_Performance.pdf java代码效率优化.docx Java内存模型的历史变迁.docx Java在游戏服务器开发中的应用.docx java基础总结大全.txt Java开发与技术挑战——关于技术的...
(十七) Swing 学习笔记 108 Swing API 包括18个公共包: 108 例程1.1 HelloWorldSwing.java 109 例程2.2 HelloWorldJFrame.java 110 (十八) 动态加载文件树的java程序 111 FileSystemTree.java源代码 112 //内部类 ...