SpingBoot知识点

1.概述SpringBoot工作原理

@Configuration注解这个注解的作用就是声明当前类是一个配置类,然后Spring会自动扫描到添加了@Configuration的类,并且读取其中的配置信息。而@SpringBootConfiguration是来声明当前类是SpringBoot应用的配置类,项目中只能有一个。所以一般我们无需自己添加。

@EnableAutoConfiguration告诉SpringBoot基于你添加的依赖,去猜想你要如何配置Spring。

SpringBoot内部对大量的第三方库或Spring内部库进行了默认配置,这些配置是否生效,取决于我们是否引入了对应库所需的依赖,如果有那么默认配置就会生效。

所以,我们使用SpringBoot构建一个项目,只需要引入所需框架的依赖,配置就可以交给SpringBoot处理了。除非你不希望使用SpringBoot的默认配置,它也提供了自定义配置的入口。

@ComponentScan

配置组件扫描的指令,通过basePackageClasses或者basePackage属性指定扫描的包。如果没有指定这些属性,那么将从声明这个注解的类所在的包开始扫描包及子包

而我们的@SpringBootApplication注解声明的类就是main函数所在的启动类,因此扫描的包是该类所在包及其子包。因此,一般启动类会放在一个比较前的包目录中。

2.Spring、SpringMVC和SpringBoot区别

Spring最重要的特征是依赖注入。所有 SpringModules 不是依赖注入就是 IOC 控制反转。

当我们恰当的使用 DI 或者是 IOC 的时候,我们可以开发松耦合应用。松耦合应用的单元测试可以很容易的进行。

2Spring MVC

Spring MVC 提供了一种分离式的方法来开发 Web 应用。通过运用像 DispatcherServelet

MoudlAndView  ViewResolver 等一些简单的概念,开发 Web 应用将会变的非常简单。

3SpringBoot

Spring  SpringMVC 的问题在于需要配置大量的参数。Spring Boot 通过一个自动配置和启动的项来目解决这个问题。为了更快的构建产品就绪应用程序, Spring Boot 提供了一些非功能性特征。

3.概述Spring IoC/DI

IoC(Inverse of Control:控制反转)是一种设计思想,就是将原本在程序中手动创建对象的控制权,交由Spring框架来管理。IoC 容器是 Spring 用来实现 IoC 的载体, IoC 容器实际上就是个Map(key,value),Map 中存放的是各种对象。

IoC 容器就像是一个工厂一样,当我们需要创建一个对象的时候,只需要配置好配置文件/注解即可,完全不用考虑对象是如何被创建出来的。

DI 依赖注入就是将实例变量传入到一个对象中去。(Dependency injection means giving an object its instance variables)@Autowired它会根据属性的类型(by type)找到对应对的Bean进行注入

  1. .@Primary和@Quelifier

@Primary:它是一个修改优先权的注解,比如上面的例子,当我们有猫有狗时,假设这次使用猫,name只需要在猫类的定义上加入@Primary就可以了这里的@Primary的含义告诉SpringIOC容器,当发现有多个同类型的Bean时,请优先使用我

4.概述Spring AOP

AOP全称为Aspect Oriented Programming

即:面向切面编程

AOP的功能简单来说就是将程序中的重复代码抽取出来,在需要执行的时候通过动态代理的方式,在不修改代码的基础上,实现对功能增强,提高程序的可用性,同时也能大大提高开发效率

AOP的作用:在程序运行过程中,在不修改源码的基础上实现功能增强

使用AOP的好处:

减少重复代码

提高开发效率

后期便于维护

5.声明式事务管理的工作原理

使用spring声明式事务首先是配置datasource,这是java sql提供的一个接口(A factory for connections to the physical data source that this DataSource object represents. ),一般会使用c3p0数据库连接池来作为datasource,它实现了datasource接口。然后是配置sessionFactory,将datasource注入进去,由sessionFactory来管理这些连接,代表连接的是session。最后配置事务管理器,管理session

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值