Java essay Java essay
首页
  • Java基础
  • Java进阶
  • 设计模式
  • 多线程
  • Java你不知道的小事
  • Spring初识
  • Spring进阶
  • SpringBoot基础
  • SpringBoot进阶
  • 什么是微服务
  • SpringCloud全家桶
  • Dubbo
  • SpringCloud Alibaba
  • Vue
  • 小程序
  • 博客搭建
  • 数据库
  • python
  • 大数据
  • 性能分析优化
  • 中间件
  • 云原生
  • 面试
  • 外卖霸王餐
  • 打工人的带饭生活
  • 30岁我该怎么办
友链
关于我
GitHub (opens new window)

Mr.Fire

全栈工程师
首页
  • Java基础
  • Java进阶
  • 设计模式
  • 多线程
  • Java你不知道的小事
  • Spring初识
  • Spring进阶
  • SpringBoot基础
  • SpringBoot进阶
  • 什么是微服务
  • SpringCloud全家桶
  • Dubbo
  • SpringCloud Alibaba
  • Vue
  • 小程序
  • 博客搭建
  • 数据库
  • python
  • 大数据
  • 性能分析优化
  • 中间件
  • 云原生
  • 面试
  • 外卖霸王餐
  • 打工人的带饭生活
  • 30岁我该怎么办
友链
关于我
GitHub (opens new window)
  • Spring

    • Spring初识
    • Spring核心Ioc及Aop
      • Spring Ioc
      • Spring Aop
      • 更多
    • Spring注入Bean的几种方式
    • Autowired和Resource的区别
  • Spring进阶

  • SpringBoot基础

  • SpringBoot进阶

  • Spring
  • Spring
Mr.Fire
2022-06-27
目录

Spring核心Ioc及Aop

# Spring Ioc

IOC: IOC我们说的控制反转,也就是将创建对象并生命周期的管理过程交给Spring处理。 在开发中不再需要关注对象的创建和声明周期的管理,我们需要时由Spring框架提供,这个由Spring管理创建对象和生命周期的机制称为控制反转。 通常,我们需要在Spring配置文件中声明bean定义,参考如下:

配置application.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
  http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
 
<beans>
  <bean id="helloService" class="全限定类名">
    <property name="需要注入的属性名称" value="注入值" />
  </bean>
</beans>
1
2
3
4
5
6
7
8
9
10
11

DI: 还有一个概念叫做DI,即依赖注入,在我们创建对象的过程中,把对象依赖的属性注入到我们的类中。可以理解为IOC是一种思想,而DI是一种行为。 参考如下:

public class TestBean {
    private String name;
    public TestBean(String name) {
    this.name = name;
    }
}
1
2
3
4
5
6

application.xml配置

<bean id="testBean" class="com.***.TestBean">
  <constructor-arg name="name" value="Mr.Fire" />
</bean>
1
2
3

# Spring Aop

AOP (Aspect Orient Programming),直译过来就是 面向切面编程,AOP 是一种编程思想,是面向对象编程(OOP)的一种补充。 通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。 便于减少系统的重复代码,降低模块间的耦合度,并有利于未来的可拓展性和可维护性。

AOP可以拦截指定的方法并且对方法增强,而且无需侵入到业务代码中,使业务与非业务处理逻辑分离,比如Spring的事务,通过事务的注解配置, Spring会自动在业务方法中开启、提交业务,并且在业务处理失败时,执行相应的回滚策略。

Spring AOP就是基于动态代理的,如果要代理的对象,实现了某个接口,那么Spring AOP会使用 JDK Proxy, 去创建代理对象,而对于没有实现接口的对象,就无法使用 JDK Proxy 去进行代理了

# 更多

了解更多,参考官网:https://docs.spring.io/spring-framework/docs/current/reference/html/index.html (opens new window)

#Spring
最后更新时间: 2023/03/01, 22:17:09
Spring初识
Spring注入Bean的几种方式

← Spring初识 Spring注入Bean的几种方式→

最近更新
01
SuperBuilder
12-29
02
30岁我该怎么办
12-29
03
关于存钱
12-29
更多文章>
Theme by Vdoing | Copyright © 2021-2025 Mr.Fire | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式