当前位置: 首页> 财经> 金融 > 企业宣传视频制作公司_专业网站设计制作费用_百度添加到桌面_抖音信息流广告怎么投放

企业宣传视频制作公司_专业网站设计制作费用_百度添加到桌面_抖音信息流广告怎么投放

时间:2025/8/24 18:10:39来源:https://blog.csdn.net/2303_81059616/article/details/145884872 浏览次数:0次
企业宣传视频制作公司_专业网站设计制作费用_百度添加到桌面_抖音信息流广告怎么投放

1. AOP原理

  1. 什么是AOP
    面向切面编程,用于将那些与业务无关,但却对多个对象产生影响的公共行为和逻辑,抽取公共模块复用,降低耦合
    AOP称为面向切面编程,用于将那些与业务无关,但却对多个对象产生影响的公共行为和逻辑,抽取并封装为一个可重用的模块,这个模块被命名为“切面”(Aspect),减少系统中的重复代码,降低了模块间的耦合度,同时提高了系统的可维护性。
  2. 你们项目中有没有使用到AOP
    记录操作日志,缓存,spring实现的事务
    核心是:使用aop中的环绕通知+切点表达式(找到要记录日志的方法),通过环绕通知的参数获取请求方法的参数(类、方法、注解、请求方式等),获取到这些参数以后,保存到数据库
  3. 事务是如何实现的
    在这里插入图片描述

2. 事务

2.1 事务失效场景

  • 异常捕获处理,自己处理了异常,没有抛出,解决:手动抛出
  • 拋出检查异常,配置rollbackFor属性为Exception
  • 非public方法导致的事务失效,改为public
  1. 异常捕获处理
    @transactional和try catch
    try catch处理掉事务管理里的异常,事务失效
    在这里插入图片描述

  2. 抛出检查异常
    spring默认只回滚非检查异常,要额外配置
    在这里插入图片描述

  3. 非public方法导致事务失效
    spring对方法事务管理的前提是方法被public修饰
    在这里插入图片描述

3. bean

3.1 生命周期

在这里插入图片描述

bean的生命周期
在这里插入图片描述

  1. 通过BeanDefinition获取bean的定义信息
  2. 调用构造函数实例化bean
  3. bean的依赖注入
  4. 处理Aware接口(BeanNameAware、Bean FactoryAware、ApplicationContextAware)
  5. Bean的后置处理器BeanPostProcessor-前置
  6. 初始化方法(initialzing Bean,init-method)
  7. Bean的后置处理器BeanPostProcessor-后置
  8. 销毀bean

3.2 循环依赖

3.2.1 原因、后果

循环依赖可能会造成死循环
在这里插入图片描述

在这里插入图片描述

3.2.2 解决方案

在这里插入图片描述

一级、二级缓存解决一般循环依赖
在这里插入图片描述

三级缓存解决代理(增强)循环依赖在这里插入图片描述
构造方法造成的循环依赖(手动解决)
用@Lazy进行懒加载,什么时候需要对象再进行bean对象的创建
在这里插入图片描述

3.3 线程安全

Spring框架中的单例bean是线程安全的吗?
不是线程安全的,Spring框架中有一个@Scope注解,默认的值就是singleton,单例的。因为一般在spring的bean的中都是注入无状态的对象,没有线程安全问题,如果在bean中定义了可修改的成员变量,是要考虑线程安全问题的,可以使用多例或者加锁来解决
在这里插入图片描述

4. MVC执行流程

Springmvc的执行流程是这个框架最核心的内容

  • 视图阶段(老旧JSP等)
  • 前后端分离阶段(接口开发,异步)

4.1 旧版解决方案

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

4.2 新版解决方案

在这里插入图片描述

在这里插入图片描述

5. Spring boot 自动配置原理

  1. 在Spring Boot项目中的引导类上有一个注解@SpringBootApplication,这个注解是对三个注解进行了封装,分别是:
    • @SpringBootConfiguration
    • @EnableAutoConfiguration
    • @ComponentScan
  2. 其中@EnableAutoConfiguration是实现自动化配置的核心注解。该注解通过 @Import注解导入对应的配置选择器。内部就是读取了该项目和该项目引用的Jar包的的classpath路径下META-INF/spring.factories文件中的所配置的类的全类名。在这些配置类中所定义的Bean会根据条件注解所指定的条件来決定是否需要将其导入到Spring容器中。
  3. 条件判断会有像 @ConditionalOnClass这样的注解,判断是否有对应的class文件,如果有则加载该类,把这个配置类的所有的Bean放入spring容器中使用。
    在这里插入图片描述

6. 常见注解

6.1 Spring

注解说明
@Component, @Controller. @Service, @Repository使用在类上用于实例化Bean
@AutowiredD使用在字段上用于根据类型依赖注入
@Qualifier结合@Autowired一起使用用于根据名称进行依赖注入
@Scope标注Bean的作用范围
@ Configuration指定当前类是一个 Spring 配置类,当创建容器时会从该类上加载注解
@ComponentScan用于指定 Spring 在初始化容器时要扫描的包
@Bean使用在方法上,标注将该方法的返回值存储到Spring容器中
@Import使用@Import导入的类会被Spring加载到IOC容器中
@Aspect. @Before. @After. @Around, @Pointcut用于切面编程(AOP)

6.2 Spring MVC

注解说明
@RequestMapping用于映射请求路径,可以定义在类上和方法上。用于类上,则表示类中的所有的方法都是以该地址作为父路径
@RequestBody注解实现接收http请求的json数据,将json转换为java对象
@RequestParam指定请求参数的名称
@PathViriable从请求路径下中获取请求参数Vuser/fidN),传递给方法的形式参数
@ResponseBody注解实现将controller方法返回对象转化为json对象响应给客户端
@RequestHeader获取指定的请求头数据
@ RestController@Controller + @ResponseBody

6.3 Spring boot

注解说明
@SpringBootConfiguration组合了-@Configuration注解,实现配置文件的功能
@ EnableAutoConfiguration打开自动配置的功能,也可以关闭某个自动配置的选
@ComponentScanSpring组件扫描
关键字:企业宣传视频制作公司_专业网站设计制作费用_百度添加到桌面_抖音信息流广告怎么投放

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: