zoukankan      html  css  js  c++  java
  • 通过日志解读Spring-Mybatis执行顺序

    // 刷新上下文环境
    11:23:09.577 [main] DEBUG org.springframework.context.support.ClassPathXmlApplicationContext - Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@6646153 // 确定候选组件类
    11:23:09.947 [main] DEBUG org.springframework.context.annotation.ClassPathBeanDefinitionScanner - Identified candidate component class: file [D:IDEA-workspacespringmybatistest argetclassescomxuetang9 11serviceimplUserServiceImpl.class] // 加载bean定义 从spring配置文件中
    11:23:10.001 [main] DEBUG org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Loaded 15 bean definitions from class path resource [spring/spring-mybatis.xml] // 分配单例模式内部配置注释处理器
    11:23:10.038 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'org.springframework.context.annotation.internalConfigurationAnnotationProcessor' // 分配单例模式mapper扫描器配置
    11:23:10.104 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'mapperScannerConfigurer' // 忽略因为不是一个具体的顶级类(因为用test方法测试的)
    11:23:10.146 [main] DEBUG org.mybatis.spring.mapper.ClassPathMapperScanner - Ignored because not a concrete top-level class: file [D:IDEA-workspacespringmybatistest arget est-classescomxuetang9 11mapperUserMapperTest.class] // 已识别的候选组件类 扫描出mapper类
    11:23:10.146 [main] DEBUG org.mybatis.spring.mapper.ClassPathMapperScanner - Identified candidate component class: file [D:IDEA-workspacespringmybatistest argetclassescomxuetang9 11mapperResourceMapper.class] 11:23:10.146 [main] DEBUG org.mybatis.spring.mapper.ClassPathMapperScanner - Identified candidate component class: file [D:IDEA-workspacespringmybatistest argetclassescomxuetang9 11mapperRoleMapper.class] 11:23:10.146 [main] DEBUG org.mybatis.spring.mapper.ClassPathMapperScanner - Identified candidate component class: file [D:IDEA-workspacespringmybatistest argetclassescomxuetang9 11mapperRoleResourceMapper.class] 11:23:10.147 [main] DEBUG org.mybatis.spring.mapper.ClassPathMapperScanner - Identified candidate component class: file [D:IDEA-workspacespringmybatistest argetclassescomxuetang9 11mapperUserMapper.class] 11:23:10.147 [main] DEBUG org.mybatis.spring.mapper.ClassPathMapperScanner - Identified candidate component class: file [D:IDEA-workspacespringmybatistest argetclassescomxuetang9 11mapperUserRoleMapper.class] // 用mapper名字和接口方法创建数据映射器
    11:23:10.147 [main] DEBUG org.mybatis.spring.mapper.ClassPathMapperScanner - Creating MapperFactoryBean with name 'resourceMapper' and 'com.xuetang9.t11.mapper.ResourceMapper' mapperInterface 11:23:10.149 [main] DEBUG org.mybatis.spring.mapper.ClassPathMapperScanner - Creating MapperFactoryBean with name 'roleMapper' and 'com.xuetang9.t11.mapper.RoleMapper' mapperInterface 11:23:10.149 [main] DEBUG org.mybatis.spring.mapper.ClassPathMapperScanner - Creating MapperFactoryBean with name 'roleResourceMapper' and 'com.xuetang9.t11.mapper.RoleResourceMapper' mapperInterface 11:23:10.149 [main] DEBUG org.mybatis.spring.mapper.ClassPathMapperScanner - Creating MapperFactoryBean with name 'userMapper' and 'com.xuetang9.t11.mapper.UserMapper' mapperInterface
    11:23:10.149 [main] DEBUG org.mybatis.spring.mapper.ClassPathMapperScanner - Creating MapperFactoryBean with name 'userRoleMapper' and 'com.xuetang9.t11.mapper.UserRoleMapper' mapperInterface
    // 加载属性文件 11:23:10.184 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'org.springframework.context.support.PropertySourcesPlaceholderConfigurer#0' // 找到引用的变量
    11:23:10.201 [main] DEBUG org.springframework.core.env.PropertySourcesPropertyResolver - Found key 'jdbc.driver' in PropertySource 'localProperties' with value of type String 11:23:10.201 [main] DEBUG org.springframework.core.env.PropertySourcesPropertyResolver - Found key 'jdbc.url' in PropertySource 'localProperties' with value of type String 11:23:10.201 [main] DEBUG org.springframework.core.env.PropertySourcesPropertyResolver - Found key 'jdbc.username' in PropertySource 'localProperties' with value of type String 11:23:10.201 [main] DEBUG org.springframework.core.env.PropertySourcesPropertyResolver - Found key 'jdbc.password' in PropertySource 'localProperties' with value of type String
    // 创建单例内部事件监听处理器 11:23:10.205 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'org.springframework.context.event.internalEventListenerProcessor' // 创建单例内部事件监听工厂
    11:23:10.206 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'org.springframework.context.event.internalEventListenerFactory' // 创建单例内部自动注解处理器
    11:23:10.209 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'org.springframework.context.annotation.internalAutowiredAnnotationProcessor'
    // 创建单例内部通用注解处理器 11:23:10.211 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'org.springframework.context.annotation.internalCommonAnnotationProcessor'
    // 创建单例内部自动代理生成器 11:23:10.220 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'org.springframework.aop.config.internalAutoProxyCreator' // 创建单例数据源
    11:23:10.285 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'dataSource'
    // 创建单例默认事物传播特性 11:23:10.287 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'org.springframework.aop.support.DefaultBeanFactoryPointcutAdvisor#0' // 使用slf4jImpl适配器初始化日志
    11:23:10.333 [main] DEBUG org.apache.ibatis.logging.LogFactory - Logging initialized using 'class org.apache.ibatis.logging.slf4j.Slf4jImpl' adapter.
    // 清理线程池链接 11:23:10.351 [main] DEBUG org.apache.ibatis.datasource.pooled.PooledDataSource - PooledDataSource forcefully closed/removed all connections. 11:23:10.351 [main] DEBUG org.apache.ibatis.datasource.pooled.PooledDataSource - PooledDataSource forcefully closed/removed all connections. 11:23:10.351 [main] DEBUG org.apache.ibatis.datasource.pooled.PooledDataSource - PooledDataSource forcefully closed/removed all connections. 11:23:10.351 [main] DEBUG org.apache.ibatis.datasource.pooled.PooledDataSource - PooledDataSource forcefully closed/removed all connections.
    // 创建单例sqlSessionFactory工厂 11:23:10.555 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'sqlSessionFactory'
    // 解析mybatis文件 11:23:10.663 [main] DEBUG org.mybatis.spring.SqlSessionFactoryBean - Parsed configuration file: 'class path resource [mybatis/mybatis-config.xml]'
    // 解析自动注入mybatis中mappers中的mapper.xml文件 11:23:10.754 [main] DEBUG org.mybatis.spring.SqlSessionFactoryBean - Parsed mapper file: 'file [D:IDEA-workspacespringmybatistest argetclassesmybatismapperResourceMapper.xml]'
    11:23:10.778 [main] DEBUG org.mybatis.spring.SqlSessionFactoryBean - Parsed mapper file: 'file [D:IDEA-workspacespringmybatistest argetclassesmybatismapperRoleMapper.xml]' 11:23:10.807 [main] DEBUG org.mybatis.spring.SqlSessionFactoryBean - Parsed mapper file: 'file [D:IDEA-workspacespringmybatistest argetclassesmybatismapperRoleResourceMapper.xml]' 11:23:10.837 [main] DEBUG org.mybatis.spring.SqlSessionFactoryBean - Parsed mapper file: 'file [D:IDEA-workspacespringmybatistest argetclassesmybatismapperUserMapper.xml]' 11:23:10.855 [main] DEBUG org.mybatis.spring.SqlSessionFactoryBean - Parsed mapper file: 'file [D:IDEA-workspacespringmybatistest argetclassesmybatismapperUserRoleMapper.xml]'
    // 创建单例事务管理 11:23:10.863 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'transactionManager'
    // 创建单例userServiceImpl spring IOC自动注入的实现类 11:23:10.881 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'userServiceImpl'
    // 创建userMapper实现类 11:23:10.907 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'userMapper'
    // 创建单例事务拦截器 11:23:11.051 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'transactionInterceptor'
    // 加载配置中设置的事物传播特性 11:23:11.091 [main] DEBUG org.springframework.transaction.interceptor.NameMatchTransactionAttributeSource - Adding transactional method [save] with attribute [PROPAGATION_REQUIRED,ISOLATION_DEFAULT,-Exception] 11:23:11.092 [main] DEBUG org.springframework.transaction.interceptor.NameMatchTransactionAttributeSource - Adding transactional method [delete] with attribute [PROPAGATION_REQUIRED,ISOLATION_DEFAULT,-Exception] 11:23:11.092 [main] DEBUG org.springframework.transaction.interceptor.NameMatchTransactionAttributeSource - Adding transactional method [update] with attribute [PROPAGATION_REQUIRED,ISOLATION_DEFAULT,-Exception] 11:23:11.092 [main] DEBUG org.springframework.transaction.interceptor.NameMatchTransactionAttributeSource - Adding transactional method [list*] with attribute [PROPAGATION_REQUIRED,ISOLATION_DEFAULT,timeout_4000,readOnly] 11:23:11.092 [main] DEBUG org.springframework.transaction.interceptor.NameMatchTransactionAttributeSource - Adding transactional method [get*] with attribute [PROPAGATION_REQUIRED,ISOLATION_DEFAULT,timeout_4000,readOnly] 11:23:11.092 [main] DEBUG org.springframework.transaction.interceptor.NameMatchTransactionAttributeSource - Adding transactional method [*] with attribute [PROPAGATION_REQUIRED,ISOLATION_DEFAULT,-Exception] // 创建其他的Mapper的实现类
    11:23:11.116 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'resourceMapper' 11:23:11.188 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'roleMapper' 11:23:11.236 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'roleResourceMapper' 11:23:11.286 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'userRoleMapper'
    // 根据配置创建新的事务 11:23:11.392 [main] DEBUG org.springframework.jdbc.datasource.DataSourceTransactionManager - Creating new transaction with name [com.xuetang9.t11.service.impl.UserServiceImpl.login]: PROPAGATION_REQUIRED,ISOLATION_DEFAULT,-Exception // 连接数据库
    Fri Jun 05 11:23:11 CST 2020 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification. // 创建连接
    11:23:11.687 [main] DEBUG org.apache.ibatis.datasource.pooled.PooledDataSource - Created connection 500885941. // 获取连接的事务
    11:23:11.687 [main] DEBUG org.springframework.jdbc.datasource.DataSourceTransactionManager - Acquired Connection [com.mysql.jdbc.JDBC4Connection@1ddae9b5] for JDBC transaction // 事务提交方式改变为手动提交
    11:23:11.691 [main] DEBUG org.springframework.jdbc.datasource.DataSourceTransactionManager - Switching JDBC Connection [com.mysql.jdbc.JDBC4Connection@1ddae9b5] to manual commit // 日志 打印的语句
    11:23:11.694 [main] INFO com.xuetang9.t11.service.impl.UserServiceImpl - 进入登录 账号~admin, 密码~123456
    // 创建一个新的sqlsession 11:23:11.698 [main] DEBUG org.mybatis.spring.SqlSessionUtils - Creating a new SqlSession
    // 为sqlsession注册事务同步性 11:23:11.703 [main] DEBUG org.mybatis.spring.SqlSessionUtils - Registering transaction synchronization for SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@107ed6fc] // JBDC后续被spring管理
    11:23:11.740 [main] DEBUG org.mybatis.spring.transaction.SpringManagedTransaction - JDBC Connection [com.mysql.jdbc.JDBC4Connection@1ddae9b5] will be managed by Spring // 解析sql语句
    11:23:11.742 [main] DEBUG com.xuetang9.t11.mapper.UserMapper.selectOne - ==> Preparing: SELECT id,account,password,phone,email,is_disabled,is_deleted,version FROM user WHERE account = ? AND password = ? // 参数
    11:23:11.772 [main] DEBUG com.xuetang9.t11.mapper.UserMapper.selectOne - ==> Parameters: admin(String), 123456(String) // 返回值数量
    11:23:11.784 [main] DEBUG com.xuetang9.t11.mapper.UserMapper.selectOne -
    <== Total: 1
    // 释放sqlsession 11:23:11.784 [main] DEBUG org.mybatis.spring.SqlSessionUtils - Releasing transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@107ed6fc] // 事物同步提交sqlSession
    11:23:11.785 [main] DEBUG org.mybatis.spring.SqlSessionUtils - Transaction synchronization committing SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@107ed6fc] // 事物同步撤销sqlSession
    11:23:11.785 [main] DEBUG org.mybatis.spring.SqlSessionUtils - Transaction synchronization deregistering SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@107ed6fc] // 事物同步关闭sqlSession
    11:23:11.785 [main] DEBUG org.mybatis.spring.SqlSessionUtils - Transaction synchronization closing SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@107ed6fc] // 事务提交
    11:23:11.785 [main] DEBUG org.springframework.jdbc.datasource.DataSourceTransactionManager - Initiating transaction commit
    // 提交jdbc事务 11:23:11.785 [main] DEBUG org.springframework.jdbc.datasource.DataSourceTransactionManager - Committing JDBC transaction on Connection [com.mysql.jdbc.JDBC4Connection@1ddae9b5] // 释放jdbc连接
    11:23:11.787 [main] DEBUG org.springframework.jdbc.datasource.DataSourceTransactionManager - Releasing JDBC Connection [com.mysql.jdbc.JDBC4Connection@1ddae9b5] after transaction // 释放连接到进程池中
    11:23:11.788 [main] DEBUG org.apache.ibatis.datasource.pooled.PooledDataSource - Returned connection 500885941 to pool.
    // 额外执行的打印语句 User [Hash = 1784834205, id=1, account=admin, password=123456, phone=null, email=null, isDisabled=0, isDeleted=0, version=0]
  • 相关阅读:
    Linux目录结构
    让访问pc端的官网直接跳转到移动端的网站代码
    bootstrap悬浮顶部或者底部
    Linux命令总结
    微信扫描打开APP下载链接提示代码优化
    iframe高度自适应的6个方法
    JS移动客户端--触屏滑动事件
    老师总结数据库
    函数
    go4
  • 原文地址:https://www.cnblogs.com/liljoker/p/13049041.html
Copyright © 2011-2022 走看看