09 2022 档案
摘要:HandlerMapping 处理器映射。看下官方文档中的解释: 由定义请求和处理程序对象之间的映射的对象实现的接口。 这个类可以由应用程序开发人员实现,尽管这不是必需的,因为 org.springframework.web.servlet.handler.BeanNameUrlHandlerMap
阅读全文
摘要:1、HandlerInterceptor 定义 直接看下SpringMVC中的接口: public interface HandlerInterceptor { /** * 预处理回调方法,实现处理器的预处理,第三个参数为响应的处理器,自定义Controller * 返回值:true表示继续流程(如
阅读全文
摘要:如果是通过请求路径去映射集合中通过精确匹配进行查询的话,其实实现起来就很简单了,但是因为要加入@RequestMapping中相关请求限制,包括通配符匹配和占位符匹配等等内容,会让寻找HandlerMethod的过程变的不那么简单,但是也没有那么复杂,下面我们就来看看。 定位HandlerMetho
阅读全文
摘要:在springMVC阶段中,对各个流程已经很熟悉了,下面再来深究一下细节。 本文主要讲解请求映射的建立和处理和拦截器 根据以前自定义SpringMVC的基础条件中,可以知道我们的创建条件无非以下几个步骤: 1、先扫描上下文; 2、判断类和方法上是否存在着对应的注解,并将信息进行封装; 3、添加映射;
阅读全文
摘要:参考:https://www.cnblogs.com/bobwuming/articles/8945965.html
阅读全文
摘要:在springboot的自动配置类中,看到了很多自动配置类使用ObjectProvider来使用。 为什么需要ObjectProvider 在Spring的使用过程中,我们可以通过多种形式将一个类注入到另外一个类当中,比如通过@Autowired和@Resources注解,而@Autowired又可
阅读全文
摘要:DataSourceTransactionObject JdbcTransactionObjectSupport // 数据库连接持有者 private ConnectionHolder connectionHolder; // 上一个隔离级别 private Integer previousIso
阅读全文
摘要:参考链接:https://www.cnblogs.com/noteless/p/10312824.html 在JDBC中存在着保存点的概念: public class JdbcExample { // 直接去lib/META-INF/services下面去拷贝即可 static final Stri
阅读全文
摘要:接着上一篇章继续说 这个需要结合着具体的案例来进行分析。 结合着我之前写的一篇文章:事务失效 看下代码: @Transactional public void sellProduct() throws ClassNotFoundException { log.info(" >>>>>>>开启日志<<
阅读全文
摘要:编程式事务 一、概述 对于Spring提供的事务机制来说,如果使用的是注解式事务,往往不好把控业务逻辑中执行数据库操作的时候。 线程的生命周期阶段中(这里的生命周期认为是一次请求之间)相对于数据库连接生命周期(数据库连接执行数据库操作)来说,数据库连接生命周期是短暂的。 所以如何把控业务逻辑使用到数
阅读全文
摘要:数据库的事务隔离级别 数据库的事务隔离级别是关系型数据库事务的理论基础,本文将从资源互斥的角度从上到下依次进行阐释 事务的隔离级别,隔离的是什么? 在阐述数据库事务的隔离级别时,我们首先应当明确一下,这个隔离,到底隔离的是什么。 也快参考我在MySQL中利用命令行测试的测试:MySQL中的隔离级别
阅读全文
摘要:Mybatis插件 目录Mybatis插件一、官方说明二、官方实例三、Configuration创建插件1、Mybatis对插件的解析2、使用插件的地方3、简化步骤四、SpringBoot配置五、使用场景 一、官方说明 官方文档中在插件章节也进行了说明: MyBatis 允许你在映射语句执行过程中的
阅读全文
摘要:MetaObject 元数据对象,底层肯定是反射,通过反射来进行设置值。 这个可以来操作对象中的属性,哪怕是组合方式,无论有多少层,这个都可以来进行操作。 举例如下所示: public class Author implements Serializable { private static fin
阅读全文
摘要:  ![](https://i
阅读全文
摘要:增删改查标签解析生成SQL过程 一、将增删改查中的写的语句解析成SqlSource 对于xml中的每个增删改查的解析 来一个官方案例: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//D
阅读全文
摘要:mybatis中的数据库连接池 一、前言 在数据库连接和事务以及线程之间的关系这个章节中聊到了为什么需要数据库连接池,下面将从代码实战中来进行描述,然后来看看mybatis框架中利用的数据库连接池 二、为什么要使用数据库连接池 1、创建一个java.sql.Connection实例对象的代价 首先让
阅读全文
摘要:一、JDBC的层次结构 总体而言,JDBC包含以下几大角色 : Driver、DriverManager、Connection、Statement、ResultSet。这几大角色之间的层次关系如下图所示: Connection:Driver 或者 DriverManager根据连接的url 和参数信
阅读全文
摘要:在学习JDBC的时候,也就是用java database connectivity,两个应用程序之间进行连接 一般情况下,在应用程序中进行数据库连接,调用JDBC接口,首先要将特定厂商的JDBC驱动实现加载到系统内存中,然后供系统使用。 基本结构图如下: 一、驱动加载进内存的过程 这里所谓的驱动,其
阅读全文
摘要:数据库连接和事务以及线程之间的关系 一、概述 最近在研究事务的时候,找到的一些好的文章,下面来总结一下。 二、事务 1、什么是事务? 数据库中的事务就相当于是一个完整的业务逻辑,事务中的操作是最小工作单元,不可分割,要么同时成功,要么同时失败 事务只会增对于增删改操作,也就是所谓的DML语句:ins
阅读全文