Spring框架介绍及使用-创新互联

文章目录
  • 1.概述
    • 1.1 Spring是什么
    • 1.2 Spring 的优势
    • 1.3 spring 的体系结构
  • 2. IoC 的概念和作用
    • 2.1 什么是程序的耦合
    • 2.2 IoC容器
  • 3. AOP的概念和作用
    • 3.1 AOP概念
    • 3.2 AOP使用
  • 4.总结

超链接: https://gitee.com/laocou/spring.git

成都创新互联公司专注于企业网络营销推广、网站重做改版、灞桥网站定制设计、自适应品牌网站建设、HTML5建站购物商城网站建设、集团公司官网建设、成都外贸网站建设公司、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为灞桥等各大城市提供网站开发制作服务。1.概述 1.1 Spring是什么

Spring 是分层的 Java SE/EE 应用 full-stack 轻量级开源框架,以 IoC(Inverse Of Control:反转控制)和 AOP(Aspect Oriented Programming:面向切面编程)为内核,提供了展现层 SpringMVC 和持久层 SpringJDBC 以及业务层事务管理等众多的企业级应用技术,还能整合开源世界众多著名的第三方框架和类库,逐渐成为使用最多的 Java EE 企业应用开源框架。

1.2 Spring 的优势

方便解耦,简化开发
通过 Spring 提供的 IoC 容器,可以将对象间的依赖关系交由 Spring 进行控制,避免硬编码所造成的过度程序耦合。用户也不必再为单例模式类、属性文件解析等这些很底层的需求编写代码,可以更专注于上层的应用。
AOP 编程的支持
通过 Spring 的 AOP 功能,方便进行面向切面的编程,许多不容易用传统 OOP 实现的功能可以通过 AOP 轻松应付。
声明式事务的支持
可以将我们从单调烦闷的事务管理代码中解脱出来,通过声明式方式灵活的进行事务的管理,提高开发效率和质量。
方便集成各种优秀框架
Spring 可以降低各种框架的使用难度,提供了对各种优秀框架(Struts、Hibernate、Hessian、Quartz等)的直接支持。
降低 JavaEE API 的使用难度
Spring 对 JavaEE API(如 JDBC、JavaMail、远程调用等)进行了薄薄的封装层,使这些 API 的使用难度大为降低。
Java 源码是经典学习范例
Spring 的源代码设计精妙、结构清晰、匠心独用,处处体现着大师对 Java 设计模式灵活运用以及对 Java 技术的高深造诣。它的源代码无意是 Java 技术的最佳实践的范例。

1.3 spring 的体系结构

spring 的体系结构

2. IoC 的概念和作用 2.1 什么是程序的耦合

在软件工程中,耦合指的就是就是对象之间的依赖性。对象之间的耦合越高,维护成本越高。因此对象的设计
应使类和构件之间的耦合最小。软件设计中通常用耦合度和内聚度作为衡量模块独立程度的标准。划分模块的一个准则就是高内聚低耦合。

比如:
早期我们的 JDBC 操作,注册驱动时,我们为什么不使用 DriverManager 的 register 方法,而是采
用 Class.forName 的方式?
Class.forName(“com.mysql.jdbc.Driver”); // 此处只是一个字符串
此时的好处是,我们的类中不再依赖具体的驱动类,此时就算删除 mysql 的驱动 jar 包,依然可以编译(运
行就不要想了,没有驱动不可能运行成功的)。
同时,也产生了一个新的问题,mysql 驱动的全限定类名字符串是在 java 类中写死的,一旦要改还是要修改
源码。解决这个问题也很简单,使用配置文件配置。

在实际开发中我们可以把对象使用配置文件配置起来,当启动服务器应用加载的时候,让一个类中的
方法通过读取配置文件,把这些对象创建出来并存起来。在接下来的使用的时候,直接拿过来用就好了。
那么,这个读取配置文件,创建和获取对象的类就是工厂,该工厂即为Spring中的容器。

2.2 IoC容器

在这里插入图片描述
在这里插入图片描述

BeanFactory 和 ApplicationContext 的区别:

  1. BeanFactory 是 Spring 容器中的顶层接口,ApplicationContext 是它的子接口。
    2.创建对象的时间点不一样。
    ApplicationContext:只要一读取配置文件,默认情况下就会创建对象。
    BeanFactory:什么使用什么时候创建对象。

实例化Bean的三种方式:

1.使用默认无参构造函数(默认情况且最常用,如果没有无参构造函数则不能实例化成功。)
2.使用静态工厂的方法创建对象
3.使用实例工厂的方法创建对象

Spring依赖注入方式:

1.构造函数注入
2.set方法注入

3. AOP的概念和作用 3.1 AOP概念

aop的底层实现用到了动态代理。
在这里插入图片描述

AOP相关术语(了解即可):
Joinpoint(连接点):
所谓连接点是指那些被拦截到的点。在 spring 中,这些点指的是方法,因为 spring 只支持方法类型的
连接点。
Pointcut(切入点):
所谓切入点是指我们要对哪些 Joinpoint 进行拦截的定义。
Advice(通知/增强):
所谓通知是指拦截到 Joinpoint 之后所要做的事情就是通知。
通知的类型:前置通知,后置通知,异常通知,最终通知,环绕通知。
Introduction(引介):
引介是一种特殊的通知在不修改类代码的前提下, Introduction 可以在运行期为类动态地添加一些方
法或 Field。
Target(目标对象):
代理的目标对象。
Weaving(织入):
是指把增强应用到目标对象来创建新的代理对象的过程。
spring 采用动态代理织入,而 AspectJ 采用编译期织入和类装载期织入。
Proxy(代理):
一个类被 AOP 织入增强后,就产生一个结果代理类。
Aspect(切面):
是切入点和通知(引介)的结合。

3.2 AOP使用

超链接:https://gitee.com/laocou/spring.git
关于AOP的具体使用,上述链接的gitee代码中有详细介绍。

4.总结

上面只简单列出的Spring最重要的基本概念。强烈建议大家将代码下载到本地,链接如下:https://gitee.com/laocou/spring.git。从头到尾整体过几遍,形成一个完整的知识框架,链接中这些内容已经基本覆盖平时项目开发中所用的知识点。后面如果想深入的话,推荐亲自阅读Spring源码。

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧

文章名称:Spring框架介绍及使用-创新互联
文章分享:https://www.cdcxhl.com/article28/dodicp.html

成都网站建设公司_创新互联,为您提供微信小程序外贸建站网站设计公司虚拟主机云服务器定制开发

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

网站托管运营