当前位置:   article > 正文

SpringBoot笔记

SpringBoot笔记

目录

1.说一说SpringBoot的自动装备原理?

2.如何实现一个自己的SpringBoot Starter?

3.SpringBoot和SSM有什么区别和优势?

4.SpringBoot如何兼容老的Spring项目?

5.你有了解过JavaConfig吗?

6.SpringBoot如何完排除某些类的自动装配?

7.SpringBoot项目如何实现异步调用?

8.SpringBoot默认是使用JDK动态代理还是CGLIB动态代理?

9.为什么默认使用CGLIB动态代理?


1.说一说SpringBoot的自动装备原理?

解释:

  • 进入SpringBoot的main方法上的注解@SpringBootApplication

2.如何实现一个自己的SpringBoot Starter?

这个我也不是很懂,可以去B站看动力节点的视频:
175-SpringBoot-如何实现一个自己的Spring Boot Starter?_哔哩哔哩_bilibili

例子:

1-3步

4-6步:

3.SpringBoot和SSM有什么区别和优势?

对配置的对比:

4.SpringBoot如何兼容老的Spring项目?

5.你有了解过JavaConfig吗?

IOC(依赖注入)

6.SpringBoot如何完排除某些类的自动装配?

  • 引入数据源的相关依赖后需要配置数据数据库的一些参数,如url,username等,不配置程序会报异常,你可以用上述两种方法排除这个类的自动装配。

7.SpringBoot项目如何实现异步调用?

方式一举例:

  • 执行上述订单创建 大约 500 ms 左右,查询地址和查询品都没有异步的进行。

还需要再main方法上开启Async注解:

  • 将查询地址和商品 加@Asyns注解(让被注解的方法异步执行,在一个新线程执行),结果返回一个Future类型的包装结果
  • 执行异步过后的上述订单创建 大约 280ms 左右
  • 完成@Async注解的背后是Spring提供的ThreadPoolTaskExecutor线程池

方式二:

  • 上述的查询地址和商品都是交给applicationTaskExecutor线程池执行的。

8.SpringBoot默认是使用JDK动态代理还是CGLIB动态代理?

  • 默认是使用CGLIB动态代理
  • 如果你想改为JDK动态代理,在application.yml文件中配置把true改成false

9.为什么默认使用CGLIB动态代理?

  • 新版的JDK ,如17,18等动态代理的底层是反射
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/1020578
推荐阅读
相关标签
  

闽ICP备14008679号