当前位置: 首页 > news >正文

中国设计网站排名西安网络推广营销公司

中国设计网站排名,西安网络推广营销公司,腾网站建设,门户网站开发 项目实施方案文章目录 Spring篇springbean是安全的的?什么是AOP你们工作中有用过AOP吗spring中的事务是如何实现的spring中事务失效场景Spring的生命周期spring中的循坏依赖springMVC的执行流程springboot的启动原理常用注解MyBatis执行流程Mybatis是否支持延迟加载?Mybatis的一…

文章目录

  • Spring篇
    • springbean是安全的的?
    • 什么是AOP
    • 你们工作中有用过AOP吗
    • spring中的事务是如何实现的
    • spring中事务失效场景
    • Spring的生命周期
    • spring中的循坏依赖
    • springMVC的执行流程
    • springboot的启动原理
    • 常用注解
    • MyBatis执行流程
    • Mybatis是否支持延迟加载?
    • Mybatis的一级、二级缓存用过吗?

Spring篇

springbean是安全的的?

不是线程安全的,他默认是单例的,如果有多个线程会并发执行该请求对应的逻辑,在处理过程中如果有对该单例状态修改,则需要考虑线程同步问题,

什么是AOP

他是面向编程的,用于与业务无关,可以抽取为公共模块,降低耦合,一般用于日志,事务

你们工作中有用过AOP吗

  • 主要是使用AOP来记录操作日志,主要思路的使用AOP的环绕通知和切点表达式

spring中的事务是如何实现的

  • 一种是编程式事务,另一只是声明式事务俩种方法
    • 第一种是TransactionTemplate来实现的,对代码有侵入性
    • 第二种是通过AOP在方法前进行拦截,执行完之后是提交还是回滚

spring中事务失效场景

  • 异常的捕获 -在catch块中添加throw new 异常(手动抛出运行时异常)
  • 抛出检查性异常 - 在Transaction属性中添加(Exception.class)
  • 不使用 public 方法

Spring的生命周期

在这里插入图片描述

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

spring中的循坏依赖

  • 循环依赖其实就是A引用了B,B又引用了A
  • 一级缓存放入的完整的Bean对,二级缓存Bean的生命周期还没有走完,三级缓存:缓存的是ObjectFactory,用来创建某个对象(工厂)
  • 解决方法
    • 先实例化A对象,同时会创建工程放入到三级缓存中,当A需要用到B的时候,B完成实例化完成时,放入到三级缓存中,B需要A的时候,通过三级缓存生产对象放入到二级缓存中,此时B创建成功后放入到一级缓存
    • 如果是构造方法出循环依赖时库使用懒在构造方法上添加@Lazy
      请添加图片描述

springMVC的执行流程

在这里插入图片描述

springboot的启动原理

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

常用注解

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

MyBatis执行流程

在这里插入图片描述

Mybatis是否支持延迟加载?

  • 支持,默认是关闭状态
  • 原理
    • 使用cglib代理来实现的,他会进来拦截器invoke,如果是null时,执行sql,调用set方法.

Mybatis的一级、二级缓存用过吗?

  • 一级和二级缓存都是保存到本地,本质是一个hashmap,一级缓存的作用域是session级别的,二级缓存是namespace和mapper的作用域,不依赖于session(默认是打开一级缓存)
  • 开启二级缓存
    在这里插入图片描述
http://www.yidumall.com/news/78950.html

相关文章:

  • 广州网站建设 美词上海网站建设方案
  • cms建站流程网页设计与制作考试试题及答案
  • wordpress 安全防范湖南网站seo找行者seo
  • 国外怎么做直播网站吗百度域名注册
  • 什么自己做网站360优化大师app
  • wordpress 评论 原理seo网站推广的主要目的不包括
  • 网站如何做实名验证seo查询 工具
  • 环球资源网优化王
  • 广东微信网站制作哪家好推广竞价托管公司
  • 自己做动漫 哪个网站赚钱云南百度推广开户
  • 青岛 公司 网站建设外贸网站有哪些平台
  • 耐克网站建设的历程广州网络推广哪家好
  • 网站开发中 即将上线西安百度竞价托管公司
  • 赤峰网站建设提高工作效率
  • 长沙市做网站的网站域名注册要多少钱
  • 注册 网站开发 公司常州网站seo
  • 网络营销中网站建设的策略网站换了域名怎么查
  • 专业网站发展趋势产品设计
  • 做网站和推广工资多少钱免费发布推广信息网站
  • 网站做接口怎么做公司网站怎么建立
  • wordpress分享类主题苏州关键词优化排名推广
  • 房产网站建设方案桂林网站设计制作
  • 国外做的比较的ppt网站有哪些企业培训课程开发
  • 蒲城网站建设好的seo平台
  • 做360全景有什么网站江西seo推广
  • 如何 建公司网站如何做好网络销售技巧
  • 网站开发与设计结课论文个人信息怎么在百度推广
  • 网站后台管理器怎么做今日发生的重大新闻
  • 东海做网站公司发外链平台
  • 深圳品牌型网站建设vi设计