logo Notebook
  • 关于
  • 标签
  • 分类
  • HTML
    • 声明 ‹!DOCTYPE›
    • 注释 ‹!-- --›
    • 标签 ‹›‹/›
    • 文档
      • 根标签 ‹html›
      • 头部标签 ‹head›
        • 标题 ‹title›
        • 基本 URL 链接 ‹base /›
        • 资源引用 ‹link/›
        • 元信息 ‹mata /›
        • 样式 ‹style›
        • 脚本 ‹script›
        • 脚本兼容性 ‹noscript›
      • 主体标签 ‹body›
    • 全局属性
    • 块级标签
      • 语义化分区 ‹header› ‹nav› ‹aside› ‹main› ‹section› ‹article› ‹figure› ‹figcaption› ‹hgroup› ‹summary› ‹details› ‹footer›
      • 正文标题 ‹h1› - ‹h6›
      • 正文段落 ‹p›
      • 分割线 ‹hr›
      • 列表 ‹ul› - ‹li›|‹ol› - ‹li› | ‹dl› - ‹dt›‹dd›
      • 分区 ‹div›
    • 行内标签
      • 内容容器 ‹span›
      • 换行标签 ‹br›
      • 超链接 ‹a›
      • 内容ID ‹data›
    • 格式化文本
      • 文本引用
      • 文本修饰
      • 文本标识
      • 特殊文本
      • 特殊字符
    • 图片标签 ‹img›
    • 多媒体标签 ‹audio› ‹vedio› ‹embed› ‹object› ‹param›
      • 加载 ‹source› ‹track›
      • 进度 / 值显示 ‹meter› ‹progress›
    • 图片适配显示 ‹picture›
    • 表格 ‹table› ‹th› ‹tr› ‹td›
      • 表格分层 ‹caption› ‹thead› ‹tbody› ‹tfoot›
      • 表格列分组 ‹col› ‹colgroup›
    • 表单 ‹form›
      • 标签 ‹label›
      • 表单控件 ‹input›
        • 单行文本框 ‹input type='text'›
        • 数字 ‹input type='number'›
        • 密码 ‹input type='password'›
        • 电子邮箱 ‹input type='email'›
        • 电话号码 ‹input type='tel'›
        • 日期 ‹input type='date'›
        • 按钮 ‹input type='button'›
        • 单选按钮 ‹input type='radio'›
        • 重置按钮 ‹input type='reset'›
        • 复选框 ‹input type='checkbox'›
        • 提交按钮 ‹input type='submit'›
        • 图片提交按钮 ‹input type='image'›
        • 颜色选择器 ‹input type='color'›
        • 文件上传 ‹input type='file'›
        • 隐藏数据 ‹input type='hidden'›
        • 时间 ‹input type='time'›
        • 日期和时间 ‹input type='datetime-local'›
        • 年份或月份 ‹input type='month'›
        • 区域值 ‹input type='range'›
        • 搜索 ‹input type='search'›
        • 链接 ‹input type='url'›
        • 星期 ‹input type='week'›
      • 下拉列表 ‹select› ‹option›
        • 分组 ‹optgroup›
      • 选项列表 ‹datalist›
      • 文本域 ‹textarea›
      • 按钮 ‹button›
      • 标签分组 ‹fieldset› ‹legend›
      • 计算或用户操作的结果 ‹output›
    • 对话框 ‹dialog›
    • 画布 ‹canvas›
    • 可伸缩矢量图形 ‹svg›
    • 地图 ‹map› ‹area›
    • 插槽 ‹slot›
    • DOM 文档对象模型
      • EventTarget 对象
        • Node 对象
          • Attr 对象
          • CDATASection 对象
          • CharacterData 对象
            • Comment 对象
            • ProcessingInstruction 对象
          • Element 对象
          • Document 对象
            • XMLDocument 对象
          • DocumentFragment 对象
          • DocumentType 对象
        • DOMString 对象
        • DOMStringList 对象
        • DOMTimeStamp 对象
        • DOMTokenList 对象
        • DOMException 对象
        • DOMImplementation 对象
        • Event 对象
          • CustomEvent 对象
        • Window 对象
        • HTMLCollection 对象
        • MutationObserver 对象
        • MutationRecord 对象
        • NodeFilter 对象
        • NodeIterator 对象
        • NodeList 对象
        • Promise 对象
        • Range 对象
        • Text 对象
        • TreeWalker 对象
        • URL 对象
        • Worker 对象
  • MyBatis
    • 框架搭建 [idea]
      • 自动补全
    • 框架搭建 [eclipse]
      • XML Catalog 离线校验(自动补全)
    • mybatis-config 映射配置
      • 属性(property)
      • 环境配置(environments)
      • 设置(settings)
      • 实体类设置别名(typeAliases)
      • Mapper 注册与绑定(mappers)
      • 数据库厂商标识(databaseIdProvider)
    • 会话工厂(SqlSessionFactory)
    • 数据库交互(SqlSession)
      • MyBatisUtil 工具类
      • 事务管理
    • Mapper接口 & 映射
      • 映射调用方式
      • 数据库查询 ‹select›
        • 参数查询与模糊查询
        • 多参数查询
      • 数据库添加 ‹insert›
        • 返回数据主键
      • 数据库删除 ‹delete›
      • 数据库更新 ‹update›
    • Mapper标签(xml)
      • 查询 ‹select›
      • 插入和更新 ‹insert›、‹update›
        • 主键返回 ‹selectKey›
        • SET子句 ‹set›
      • 删除 ‹delete›
      • WHERE子句 ‹where›
      • 条件 ‹if›
      • 首尾删除与添加 ‹trim›
      • 条件分支 ‹choose› ‹when› ‹otherwise›
      • 循环迭代 ‹foreach›
      • SQL 片段 ‹sql›
      • SQL 片段引用 ‹include›
      • 字符串预处理
      • 映射集 ‹resultMap›
        • 构造方法 ‹constructor›
        • 结果映射 ‹id› ‹result›
        • 关联 ‹association›
          • 关联查询(一对一)
        • 集合 ‹collection›
          • 集合查询(一对多)
        • 鉴别器 ‹discriminator›
        • 延迟加载(按需关联/懒加载)
        • 继承
      • resulType 和 resultMap 的区别
      • 缓存 ‹cache›
      • 缓存引用 ‹cache-ref›
      • 绑定变量 ‹bind›
    • 映射器注解
      • 二级缓存(@CacheNamespace)
      • 缓存引用(@CacheNamespaceRef)
      • 属性(@Property)
      • SQL 语句注解(@Select @Insert @Delete @Update)
      • 可选属性(@Options)
      • 构造方法(@ConstructorArgs @Arg)
      • 结果类型(@ResultType)
      • 数据集合(@Results @Result @ResultMap)
      • 一对一和一对多(@One @Many)
      • 鉴别器(@TypeDiscriminator @Case)
      • Map 结果键值(@MapKey)
      • 动态SQL构建(@SelectProvider @InsertProvider @UpdateProvider @DeleteProvider )
      • 参数(@Param)
      • 主键获取(@SelectKey)
      • 缓存刷新(@Flush)
      • 自定义语句驱动注解(@Lang)
    • 缓存
      • 本地缓存/一级缓存 (local cache)
      • 二级缓存
        • 自定义缓存
  • Spring
    • 控制反转(IOC)/依赖注入(DI)
    • ApplicationContext 容器
    • Web
      • 容器监听器(ContextLoaderListener)
    • Web MVC
      • 配置xml
        • web.xml
          • 配置前端控制器 ‹servlet› ‹servlet-mapping›
          • 加载顺序 ‹load-on-startup›
          • 拦截器 ‹filter› ‹filter-mapping›
          • 初始化spring配置文件 ‹context-param› ‹listener›
        • dispatcher-servlet.xml
          • 静态资源映射 ‹mvc∶resources›
          • 视图解析器(ViewResolver)
          • 控制器映射(HandlerMapping)
            • SimpleUrlHandlerMapping
            • BeanNameUrlHandlerMapping
          • 后端控制器(Controller)
          • 基于json格式的mvc交互
          • 文件上传 MultipartResolver
          • 拦截器 ‹mvc∶interceptors›
      • 使用注解
        • 声明后端控制器(@Controller)
        • 映射请求地址(@RequestMapping)
        • 获取请求参数(@RequestBody @RequestParam)
          • @RequestParam
          • @RequestBody
          • @RequestPart
        • 校验(@Valid,@Valided)
        • 返回JSON / XML数据 (@ResponeBody)
        • 数据返回控制器(@RestController)
        • 修饰类和方法 (@ResponseStatus)
        • 参数预加载(@ModelAttribute)
        • 数据绑定(@InitBinder)
        • 数据共享(@SessionAttributes)
        • 异常处理器 (@ExceptionHandler)
        • 全局处理器(@ControllerAdvice)
          • 全局异常处理
            • 自定义异常的处理
          • 全局数据绑定
          • 全局数据预处理
        • 跨域资源共享 (@CrossOrigin)
        • URI属性注解(@PathVariable,@RequestHeader,@CookieValue)
      • 视图路径解析
        • 以'/'开头丨${pageContext.request.contextPath}
        • 不以'/'开头丨‹base›标签指定路径
      • 视图返回
        • 视图保护
        • 转发和重定向
      • 控制器全局参数
        • 参数接收
          • 解决参数传递乱码
        • 参数传递
      • Ajax交互
        • HttpMessageConverter
    • SSM 框架整合
    • SSM 前后端数据交互对接
      • 响应体空值处理
    • SSM 全局异常统一处理
    • 集成 Hibernate Validator 校验框架
      • 校验(@Valid @Valided)
      • 顺序校验(@GroupSequence)
      • 动态顺序校验(@GroupSequenceProvider)
      • 自定义校验注解
      • 参数校验异常处理
    • 框架搭建 [idea]
    • DI 配置xml(applicationContext.xml)
      • 对象 ‹bean›
        • 实例化
        • 自定义作用域
        • 初始化和销毁
        • 启动和停止
        • 继承
        • 核心接口 BeanFactory
        • FactoryBean
        • 设值注入 ‹property›
          • 注入实体对象 ‹props›
        • 自动装配模式
        • 构造注入 ‹constructor-arg›
        • 方法注入 ‹lookup-method/›
        • 方法替换 ‹replaced-method›
        • 装配限定 ‹qualifier›
        • 元数据 ‹meta›
      • 对象别名 ‹alias›
      • 多配置文件加载 ‹import›
      • 注解扫描器 ‹context:component-scan›
      • 读取数据库连接配置(PropertyPlaceholderConfigurer)
      • 配置数据连接池(DriverManagerDataSource)
        • 自定义数据库连接池(DruidDataSource)
        • DBCP数据库连接池(BasicDataSource)
        • C3P0数据库连接池(ComboPooledDataSource)
    • DI 使用注解
      • 作用域(@Scope)
      • 预加载(@Lazy)
      • 缓存控制(@CacheConfig @EnableCaching @Caching @Cacheable @CachePut @CacheEvict)
      • 空值标记(@NonNull @NonNullApi @NonNullFields @Nullable)
      • 条件导入(@Conditional)
      • 分组校验(@Validated)
      • 对象注入(@Component)
      • 属性注入(@Value)
        • @value使用外部属性配置文件
      • 引入外部配置文件(@PropertySource)
      • 自动装配(@Autowired @Resource @Inject)
        • 注入优先(@Primary)
        • 注入区分(@Qualifier)
      • 注解扫描器 (@ComponentScan)
        • 自定义过滤规则(@Filter)
      • 配置beans容器(@Configuration)
      • 创建bean(@Bean)
      • 初始化和销毁(@PostConstruct 和 @PreDestory)
      • 异步方法(@Async)
      • 开启异步支持-多线程(@EnableAsync)
      • 开发环境配置指定(@Profile和@ActiveProfiles)
      • 计划任务(@Scheduled @EnableScheduling)
    • AOP
      • AspectJ框架实现AOP
    • AspectJ框架 配置xml
      • 定义切面和切入点 ‹aop∶aspect› ‹aop∶pointcut›
        • 切入点表达式
          • 组合切入点表达式
          • 命名及匿名切入点
      • 前置通知 ‹aop∶before›
      • 后置通知 ‹aop∶afterreturning›
      • 环绕通知 ‹aop∶around›
      • 异常通知 ‹aop∶afterthrowing›
      • 最终通知 ‹aop∶after›
      • 定义通知器 ‹aop∶advisor›
      • 定义事务配置 ‹tx∶advice›
    • AspectJ框架 使用注解
      • 动态开启AOP(@EnableAspectJAutoProxy)
      • 定义切面和切入点(@Pointcut @Aspect)
      • 通知注解
        • 前置通知(@Before)
        • 后置通知(@AfterReturning)
        • 环绕通知(@Around)
        • 异常通知(@AfterThrowing)
        • 最终通知(@After)
          • 通知参数
            • 自动传参
    • 集成MyBatis
      • applicationContext.xml中配置
        • 接口映射配置器(MapperFactoryBean)
          • 接口映射批量扫描器(MapperScannerConfigurer)
    • 事务
      • TransactionManager 事务管理器
        • 事务属性
        • 事务状态
      • 声明式事务(xml & 注解)
        • 配置xml方式
          • 创建事务管理器
        • 使用注解方式(@Transactional)
          • 环绕通知使用事务(@Around)
      • 编程式事务(TransactionTemplate & PlatformTransactionManager)
  • Spring Boot
    • 框架搭建 [idea]
    • Test 测试类
      • 单元测试
        • 断言(Assertions)
        • 前置条件(Assumptions)
        • 参数化测试(@ParameterizedTest)
      • 功能测试
      • 切片测试
      • 创建测试上下文(@SpringBootTest)
      • 加载原生web资源 @WebAppConfiguration
    • 应用上下文配置类(ConfigurableApplicationContext)
      • 核心注解(@SpringBootApplication)
        • 自动配置类加载(@EnableAutoConfiguration)
          • 自动导入包(@AutoConfigurationPackage)
            • 类导入(@Import)
            • 条件导入(@Conditional)
    • 全局配置(application.properties)
      • 多环境配置切换
      • 属性加密
      • 日志配置
      • 属性松散绑定规则
    • 全局配置属性注入
      • 逐个注入(@Value)
      • 批量注入(@ConfigurationProperties @EnableConfigurationProperties)
    • 自定义配置文件引用(@PropertySource)
    • 属性转换
      • 自定义配置解析类(@ConfigurationPropertiesBinding)
    • 外部上下文配置导入(@importResource)
    • Lombok 实体类简化注解
    • 静态资源规则
      • 错误页面
    • 请求拦截(HandlerInterceptor & Filter & @WebFilter)
    • 文件上传(MultipartFile)
    • 忽略警告(@SuppressWarnings)
    • 集成JSP
    • 集成 Mybatis
      • mapper注册(@Mapper @MapperScan)
      • 使用第三方数据连接池(druid)
      • mybatis 逆向工程生成配置
    • 前后端数据交互对接
      • 全局响应体处理器(ResponseBodyAdvice)
        • 取消封装
        • 响应体空值处理
      • 全局异常处理类
    • 集成 Validation 校验框架
      • 参数校验异常处理
  • MySQL(Beta)
    • 命令操作
      • 登录命令
    • 在线安装
    • 手动安装
    • 设置环境变量
    • 数据依赖
      • 函数依赖(Functional Dependency)
      • 多值依赖(Multivalued Dependency)
      • 连接依赖(Join Dependency)
    • 键/码/关键字
    • 范式
      • 命名规范
      • 设计规范
        • 数据表对应关系
      • 语句规范
      • 行为规范
    • 注释
    • 数据类型
      • 类型约束
      • 类型使用规范
      • JSON 数据操作
      • char 和 varchar的区别
    • 运算符
      • 运算优先级
    • 函数
      • 日期函数
      • 字符串函数
        • 字符串比较
        • 正则表达式
      • 数学函数
      • 比较函数
      • 窗口函数
      • 可加载函数
      • 流量控制函数
      • 类型转换函数
        • 字符集转换
      • XML 函数
      • 位函数
      • 加密和压缩函数
      • 锁定功能函数
      • 信息函数
      • JSON 函数
        • 创建 JSON 值
        • 搜索 JSON 值
        • 修改 JSON 值
        • 返回 JSON 值
        • JSON 表函数
      • 聚合函数
      • 其他函数
    • SQL 语言类型
    • 全局权限用户表(DCL)
      • 创建权限用户(CREATE USER/INSERT/GRANT)
      • 修改权限用户名(RENAME USER)
      • 修改root用户密码(set password for/mysqladmin/UPDATE/ALTER)
      • 修改权限用户密码(set password for/UPDATE/ALTER/GRANT)
        • 密码重置
      • 删除权限用户(DELETE FROM/DROP USER)
    • 数据库用户权限表(DCL)
      • 权限分布
      • 查看权限(SELECT/SHOW GRANTS FOR)
      • 增加权限(GRANT priv_type ON)
      • 删除权限(REVOKE priv_type ON)
    • 原子数据定义语句(原子DDL)
      • 在 DDL 语句中的变化
      • 支持的存储引擎
        • 查看 DDL 日志
    • DATABASE 数据库(DDL)
      • 字符集(character set)
        • 查看字符集
        • 设置字符集
        • utf8 和 utf8mb4
      • 校验规则(collation)
        • 查看检验规则
        • 设置校验规则
        • utf8_bin、utf8_general_ci(utf8_general_cs)、utf8_unicode_ci(utf8_unicode_cs)
        • utf8mb4_general_ci 和 utf8mb4_unicode_ci
    • 事务
    • 锁
    • 储存引擎
    • 约束
    • Table 数据表(DDL)
      • 创建数据表(CREATE TABLE)
      • 查看数据表(SHOW TABLE/DESC/SHOW CREATE TABLE/SHOW COLUMNS FROM
      • 修改数据表(ALTER TABLE)
        • 添加列字段(ADD)
        • 修改列字段(RENAME TO/MODIFY/CHANGE)
        • 删除列字段(DROP)
        • 添加约束
          • 默认值约束(DEFAULT)
          • 非空约束(NOT NULL)
          • 主键约束(PRIMARY KEY)
          • 自增约束(AUTO_INCREMENT)
          • 外键约束(FOREIGN KEY … REFERENCES …)
          • 唯一约束(UNIQUE)
          • 检查约束(CHECK)
            • 定义约束名(ADD CONSTRAINT)
        • 删除约束
          • 列级约束(DEFAULT、NOT NULL、AUTO_INCREMENT)
          • 表级约束(PRIMARY KEY、FORERGN KRY、UNIQUE、CHECK)
        • 添加行数据(INSERT)
          • 从其他表的数据添加(INSERT TABLE … SELECT)
          • 使数据插入或更新(ON DUPLICATE KEY UPDATE)
          • 为单行或单列行插入数据(INSERT … SET)
        • 修改行数据(UPDATE)
        • 删除行数据(DELETE FROM)
      • 复制数据表
      • 清空数据表(TRUNCATE)
      • 删除数据表(DROP TABLE)
    • MySQL SELECT 查询语句(DQL)
      • 查询限制
      • 条件(WHERE)
        • 模糊查询(LIKE/NOT LIKE)
          • 内置函数(LOCATE、POSITION、INSTR、FIND_IN_SET)
        • 正则查询
          • 正则关键字(REGEXP/RLIKE/NOT REGEXP/NOT RLIKE)
          • 正则函数 [ REGEXP_INSTR()、REGEXP_LIKE()、REGEXP_REPLACE()、REGEXP_SUBSTR() ]
      • 分组(GROUP BY)
      • 筛选(HAVING)
      • 排序(ORDER BY)
        • 文件排序(filesort)
      • 分页(LIMIT)
      • 合并行重复(DISTINCT)
      • 合并结果集(UNION [DISTINCT]/UNION ALL)
    • 连接(JOIN)
      • 自连接
      • 内连接([INNER] JOIN)
      • 左(外)连接(LEFT [OUTER] JOIN)
      • 右(外)连接(RIGHT [OUTER] JOIN)
    • 等值连接查询
    • 子查询(嵌套查询)
      • 带有 ALL(SOME)/ANY 的子查询
      • 带有 [NOT] IN 的子查询
      • 带有 [NOT] EXISTS 的子查询
      • 相关子查询
      • 派生表
        • 横向派生子查询
    • 索引
      • 查看索引(SHOW INDEX)
      • 创建索引(CREATE INDEX)
        • 主键索引(PRIMARY KEY)
        • 唯一索引(UNIQUE)
        • 普通索引(INDEX/KEY)
        • 全文索引(FULLTEXT)
          • 系统变量与自定义配置
            • 索引重建
          • 检索模式
            • 自然语言模式(IN NATURAL LANGUAGE MODE)
            • 布尔模式(IN BOOLEAN MODE)
            • 查询扩展模式(WITH QUERY EXPANSION/IN NATURAL LANGUAGE MODE WITH QUERY EXPANSION)
          • 反向索引(倒排索引)-› [InnoDB]
            • Auxiliary Table 辅助表
          • 分词法
          • 全文停止词
          • 全文解析器
            • ngram
            • MeCab
        • 空间索引(SPATIAL)
      • 删除索引(DROP INDEX )
      • 单列 -› 多列(组合/复合/联合)索引
        • 替代方案
          • 最左匹配原则
            • 有序索引排序
              • 降序索引(Descending Indexes)
            • 索引条件下推
      • 前缀索引
      • 函数索引
        • 在 JSON 数据查询的使用
        • 生成列(Generated Column)
          • 查看生成列
          • 模拟函数索引
      • 索引隐藏
      • 索引覆盖
      • 索引优化
      • 数据储存模式与读取
        • InnoDB 引擎
          • 聚簇索引(聚集索引/主键索引/主索引)
          • 非聚簇索引(非聚集索引/二级索引/辅助索引/辅助键索引)
        • MyISAM 引擎
          • 非聚簇索引(非聚集索引/辅助索引/辅助键索引/二级索引 )
    • 分析器(EXPLAIN|DESCRIBE|DESC)
      • 分析器输出格式化(EXPLAIN FORMAT = TRADITIONAL|JSON|TREE)
      • 查询分析器(EXPLAIN SELECT)
        • 分析索引
      • 查询性能分析器(EXPLAIN ANALYZE)

DI 使用注解

使用注解的作用在于代替applicationContext.xml文件中的配置操作,用了注解之后,就不需要在xml文件中配置   Spring能够从classPath下自动扫描,实例化具有特定注解的类,Spring提供了使用注解的方式注入bean。首先需要在xml中开启解析注解的支持,因为默认情况下是不支持的。   首先需要在xml中开启解析注 ...
2022-11-28 Spring

控制反转(IOC)/依赖注入(DI)

控制反转(IoC)也被称为依赖注入(DI),是从两个角度描述的同一个概念。   依赖注入(DI)是一个对象定义其依赖关系的过程。对象仅通过构造函数参数、工厂方法的参数或在对象实例被构造或从工厂方法返回后设置的属性来定义与一起工作的其他对象的依赖关系。从工厂方法返回。然后容器在创建 bean 时注入这些依赖项。从根本上讲,此过程是通过使用类的直接构造或服务定 ...
2022-06-28 Spring
©2022-2025 isixe 总访问量 总访客数
Theme Node-Tree Powered by Hexo