Spring 框架中的Spring FrameWork

2023-11-14  本文已影响0人  扶光_

spring官网
spring不仅只是一个技术,发展到现在sping有完整的家族体系,提供了若干个项目,每个项目可以完成特定的功能,称为spring全家桶
90%以上的企业技术选型
优势

一,Spring FrameWork

是sping全家桶中最基础的项目,是其他项目的根基

1.1 spring FrameWork系统架构

系统架构

1.2 IOC核心思想

之前java代码写的项目耦合度偏高
使用对象时,在程序中不主动使用new产生对象,转换为由外部提供对象 这就是IOC(控制反转)
对象的创建控制权由内部代码转移到外部,这种思想交控制反转,目的就是解耦

Spring把这个控制反转的思想做到了,进行了实现
spring在内部提供了一个容器叫IOC容器,用来充当ioc思想中的“外部”
ioc容器负责对象的创建初始化等,被创建的的对象再ioc容器里被称为bean
DI依赖注入,两个bean中存在依赖关系,ioc容器直接帮你把他两绑好,这个过程叫作依赖注入

总结:充分解耦
1 使用ioc容器管理bean(IoC)
2 在IoC容器内有依赖关系的bean进行绑定

管理service和dao(Mapper)包

二,Spring 的使用

首先要导入第三方spring framework的包

<!--    sping framwork-->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context</artifactId>
      <version>5.2.10.RELEASE</version>
    </dependency>
image.png image.png image.png 删除业务层创建的new对象

配置server与dao关系


配置关系

2.1 bean的基础配置

spring报错从最后一行看 ,依次往上解决

2.2 构造方法实例化bean

<bean id="brandDao" class="实现类路径"/>
bean本质上就是对象,创建bean使用构造方法完成
spring在给我们创建bean的时候调用的是无参的构造方法

2.3 静态工厂bean实例化

<bean id="orderDao" class="factory.orderFactory" factory-method="调用工厂的那个方法来进行创建"/>

2.4 实例工厂初始化bean

<bean id="UserFactory" class="factory.userDaoFactory" />
<bean id="userDao" factory-bean="UserFactory" factory-method="getUserDao" />

2.5FactoryBean 使用最多方法创建

image.png

2.6 Bean的生命周期

bean从创建到销毁的整体过程


经历的阶段

三,Bean依赖注入方式

引用类型

四,容器

创建容器(两种)
ClassPathXmlApplicationContext
FileSystemXmlApplicationContext
获取bean(三种)
BookDao bd = (BookDao)ctx.getBean("bd")
BookDao bd = ctx.getBean("bd",BookDao.class)
BookDao bd = ctx.getBean(BookDao.class)

五,注解开发

简化代码

5.1注解开发定义bean

注解开发定义bean image.png

5.2 纯注解开发

image.png image.png

5.3 bean的管理

image.png

六,AOP

面向切面编程,就是一种编程思想,在不惊动原始设计的基础上为其进行功能加强

AOP通知类型

aop通知抽取了共性的功能,根据功能位置不同,最终运行代码要加到合理的位置上

Aop获取数据

用例,比如在百度网盘分享链接和提取码时,当用户点开链接输入密码时多输入的空格进行处理,可以用环绕通知拿到参数进行处理trim()

七,事务

列如,银行转账
保证一系列的数据库操作同成功同失败
在接口中打一个注解@transitonal

image.png

spring事务属性
@transitonal(timeout=-1)


image.png

处理事务 要求有些操作不加入事务中去
@transitonal(propagation=propagation.REQUIRE_NEW)

image.png
上一篇 下一篇

猜你喜欢

热点阅读