![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spring系列框架
文章平均质量分 74
Spring系列框架
@Sup
学无止境!
展开
-
Spring MVC工作原理
原理图如下所示流程说明客户端(浏览器)发送请求,直接请求到DispatcherServlet。 DispatcherServlet根据请求信息调用HandlerMapping,解析请求对应的Handler。 解析到对应的Handler(也就是我们平常说的Controller控制器)后,开始由HandlerAdapter适配器处理。 HandlerAdapter会根据Handler来调用真正的处理器开处理请求,并处理相应的业务逻辑。 处理器处理完业务后,会返回一个...原创 2022-03-10 09:43:20 · 55 阅读 · 0 评论 -
自定义SpringBoot的starter,以及如何导入jar包
一、介绍SpringBoot 最强大的功能就是把我们常用的场景抽取成了一个个starter(场景启动器),我们通过引入springboot 为我提供的这些场景启动器,我们再进行少量的配置就能使用相应的功能。即使是这样,springboot也不能囊括我们所有的使用场景,往往我们需要自定义starter,来简化我们对springboot的使用。启动器starter只是用来做依赖管理,需要专门写一个类似spring-boot-autoconfigure的配置模块,用的时候只需要引入启动器starter,就可以原创 2022-02-24 10:25:14 · 2312 阅读 · 0 评论 -
Mybatis的缓存机制
整体示意图:一. 一级缓存localCache在应用运行过程中,我们有可能在一次数据库会话中,执行多次查询条件完全相同的 SQL,MyBatis 提供了一级缓存的方案优化这部分场景,如果是相同的 SQL 语句,会优先命中一级缓存,避免直接对数据库进行查询,提高性能。每个 SqlSession 中持有了 Executor,每个 Executor 中有一个 LocalCache。当用户发起查询时,MyBatis 根据当前执行的语句生成 MappedStatement,在 Local Cac.原创 2022-04-12 20:58:28 · 544 阅读 · 0 评论 -
Spring事务的隔离级别及传播方式总结
一.隔离级别TransactionDefinition 接口中定义了五个表示隔离级别的常量:TransactionDefinition.ISOLATION_DEFAULT:使用后端数据库默认的隔离级别,Mysql默认采用的 REPEATABLE_READ隔离级别 Oracle 默认采用的 READ_COMMITTED隔离级别。 TransactionDefinition.ISOLATION_READ_UNCOMMITTED: 最低的隔离级别,允许读取尚未提交的数据变更,可能会导致脏读、幻读或不可重原创 2022-03-10 09:53:17 · 417 阅读 · 0 评论 -
Spring IoC 和 AOP的通俗理解
这篇文章会从下面从以下几个问题展开对IoC& AOP 的解释什么是 IoC? IoC 解决了什么问题? IoC 和 DI 的区别? 什么是 AOP? AOP 解决了什么问题? AOP 为什么叫做切面编程?首先声明:IoC & AOP 不是 Spring 提出来的,它们在 Spring 之前其实已经存在了,只不过当时更加偏向于理论。Spring 在技术层次将这两个思想进行了很好的实现。什么是 IoCIoC (Inversion of control )控制反转/反转..原创 2022-03-10 10:15:36 · 2537 阅读 · 0 评论 -
IDEA 创建WEB工程,Tomcat部署,导入第三方包
一.创建WEB工程在用idea2021创建Web工程开发的时候,先新建一个java工程,然后在工程上右键add framework support,然后选择上javaweb就行,就可以出现web,web-inf等目录。二.Tomcat部署在editconfiguration时,没有tomcat,点击file->settings->Build, Executation, Deployment->Application Servers->±>填入Tomcat的安装.原创 2022-02-23 20:13:37 · 350 阅读 · 0 评论 -
常见错误解决方法总结
基本原则每写一个模块就测试一下,写出其对应得Test方法进行测试,及时发现问题。如果出现错误,可以采取以下几种方式进行排错:可以插入System.out.println()函数在不同的地方输出相关信息(这种仅仅是针对已知道问题大概在哪,一般是项目不大的时候可以采用)。 可以自定义异常类,在适当的位置进行抛出,然后进行捕获。 采用代码编辑器的Debug工具,我用过的很多编辑器都是有Debug功能的,Java方面Idea 和Eclipse都有,Python的Pycharm编辑器,C++的Visu.原创 2022-02-23 21:19:44 · 555 阅读 · 0 评论 -
SpringMVC扩展配置踏坑
最近在做一个springboot的小项目,需要对SpringMVC进行扩展配置,首先在Controller里面进行了测试,发现怎么都是对的,这里设置端口号为8088,通过 lohost:8088:/ 或者 local:8088/index.html 或者 localhost:8088/a 都是可以正常访问到首页的。@Controllerpublic class HelloController { @RequestMapping({"/","/index.html","a"}) pub原创 2022-02-24 10:38:09 · 132 阅读 · 0 评论 -
Spring 循环依赖问题的解决方法
Spring通过三级缓存解决了循环依赖。singletonObjects:一级缓存,存储的是所有创建好了的单例Bean earlySingletonObjects:二级缓存,存储的是完成实例化,但是还未进行属性注入及初始化的对象 singletonFactories:三级缓存,存储的是提前暴露的一个单例工厂,二级缓存中存储的就是从这个工厂中获取到的对象当A、B两个类发生循环引用时,在A完成实例化后,就使用实例化后的对象去创建一个对象工厂,添加到三级缓存中,如果A被AOP代理,那么通过这个工厂获取到原创 2022-04-11 22:44:26 · 2094 阅读 · 1 评论 -
Spring Boot的自动配置、参数校验以及配置文件读取方式详解
一.自动配置是如何实现的因为@SpringBootApplication注解的原因。我们知道 @SpringBootApplication 看作是@Configuration、@EnableAutoConfiguration、@ComponentScan 注解的集合。@EnableAutoConfiguration: 启用SpringBoot的自动配置机制 @ComponentScan : 扫描被 @Component(@Service,@Controller )注解的bean,注解默认会扫.原创 2022-03-13 22:20:26 · 1626 阅读 · 0 评论