JavaEE鸿蒙应用开发HTML&JS+前端Python+大数据开发人工智能开发AI+设计软件测试新媒体+短视频直播运营产品经理集成电路应用开发(含嵌入式)Linux云计算+运维开发C/C++拍摄剪辑+短视频制作PMP项目管理认证电商运营Go语言与区块链大数据PHP工程师Android+物联网iOS.NET

Spring高级之注解驱动开发详解_Java热门框架教程中级教程

更新日期:2022.05.20

Spring高级之注解驱动开发详解_Java热门框架教程

全套视频教程及资料

视频教程技术解析配套源码学习工具学习笔记

一键免费下载

扫码关注,回复关键词,马上领取全套视频资源!

1. 微信扫描二维码,
    关注“黑马程序员”公众号(itheima666)

2. 回复关键词“领取资源01”,

即可在小程序的【JavaEE】学科中领取全部资源

课程须知

Spring框架是一系列应用框架的核心,也是SpringBoot的基础。在当下的市场开发环境中,Spring占有非常高的地位。它里面包含了Spring,SpringMVC,SpringData,Srp...

  1. 课程介绍
  2. 课程目录
  3. 课程评论

1、课程简介

        Spring框架是一系列应用框架的核心,也可以说是整合其他应用框架的基座。同时还是SpringBoot的基础。在当下的市场开发环境中,Spring占据的地位是非常高的,基本已经成为了开发者绕不过去的框架了。它里面包含了Spring,SpringMVC,SpringData(事务),SrpingTest等等。

       其中:

              Spring本身里面包含了两大核心IOC和AOP。IOC负责降低我们代码间的依赖关系,使我们的项目灵活度更高,可复用性更强。AOP是让方法间的各个部分更加独立,达到统一调用执行,使后期维护更加的方便。

              SpringMVC本身是对Servlet和JSP的API进行了封装,同时在此基础上进一步加强。它推出的一套注解,可以降低开发人员的学习成本,从而更轻松的做表现层开发。同时,在3.x版本之后,它开始之初Rest风格的请求URL,为开发者提供了开发基于Restful访问规则的项目提供了帮助。

              SpringData是一组技术合集。里面包含了JDBC,Data JPA,Data Redis,Data Mongodb,Data Rabbit,Data ElasticSearch等等。合集中的每一项都是针对不同数据存储做的简化封装,使我们在操作不同数据库时,以最简洁的代码完成需求功能。

              SpringTest它是针对Junit单元测试的整合。让我们在开发中以及开发后期进行测试时,直接使用Junit结合spring一起测试。

       本套课程中,我们将全面剖析Spring和SpringMVC两个部分。从应用场景分析,到基本用法的入门案例,再到高级特性的分析及使用,最后是执行原理的源码分析。让学生通过学习本套课程不仅可以知其然,还可以知其所以然。最终通过一个综合案例,实现灵活运用Spring框架中的各个部分。


2、适应人群

学习spring,要有一定的Java基础,同时应用过spring基于xml的配置。(或者学习过官网的Spring课程)

学习springmvc,要有一定java web开发基础。同时对spring框架要有一定了解。

3、课程亮点

       系统的学习Spring框架中各个部分,掌握Spring中一些高级特性的使用。

l Spring IoC

n 设计模式-工厂模式

n 基础应用-入门案例

n 基础应用-常用注解使用场景介绍及入门

n 高级特性-自定义BeanNameGenerator

n 高级特性-自定义TypeFilter

n 高级特性-ImportSelector和ImportBeanDefinitionRegistrar的分析

n 高级特性-自定义ImportSelector

n 高级特性-FilterType中的AspectJTypeFilter的使用

n 高级特性-自定义ImportBeanDefinitionRegistrar

n 高级特性-自定义PropertySourceFactory实现解析yaml配置文件

n 源码分析-BeanFactory类视图和常用工厂说明

n 源码分析-AnnotationConfigApplicationContext的register方法

n 源码分析-AnnotationConfigApplicationContext的scan方法

n 源码分析-AbstractApplicationContext的refresh方法

n 源码分析-AbstractBeanFactory的doGetBean方法

l Spring Aop

n 设计模式-代理模式

n 编程思想-AOP思想

n 基础应用-入门案例

n 基础应用-常用注解

n 高级应用-DeclareParents注解

n 高级应用-EnableLoadTimeWeaving

n 源码分析-@EnableAspectJAutoproxy注解加载过程分析

n 源码分析-AnnotationAwareAspectJAutoProxyCreator

n 技术详解-切入点表达式详解

l Spring JDBC

n 基础应用-JdbcTemplate的使用

n 源码分析-自定义JdbcTemplate

n 设计模式-RowMapper的策略模式

n 高级应用-NamedParameterJdbcTemplate的使用

n 源码分析-TransactionTemplate

n 源码分析-DataSourceUtils

n 源码分析-TransactionSynchronizationManager

n 源码分析-TransactionAwareDataSourceProxy

n High-level Synchronization Approach和Low-level Synchronization Approach

l Spring MVC

n 基础入门-基于Servlet3.0规范的入门案例(纯注解配置)

n 源码分析-入门案例的执行过程分析

n 基础入门-常用注解

n 源码分析-DispatcherServlet执行过程

n 源码分析-RequestMappingHandlerMapping的执行时机

n 源码分析-请求参数封装

n 源码分析-PathVariable实现原理

n 源码分析-拦截器的调用过程分析

n 源码分析-文件上传

 

4、主讲内容

章节一:Spring的Ioc

1.    工厂模式

2.    快速入门

3.    常用注解

4.    高级应用

5.    原理分析

章节二:Spring的Aop

1.    代理模式

2.    AOP编程思想

3.    快速入门

4.    常用注解

5.    高级应用

6.    原理分析

章节三:Spring的Jdbc

1.    JdbcTemplate基本应用

2.    自定义实现JdbcTemplate

3.    BeanPropertyRowMapper实现原理分析

4.    事务的一组API介绍

5.    事务的快速入门

6.    DataSourceTransactionManager源码分析

7.    TransactionTemplate源码分析

章节四:SpringMVC

1.    基于Servlet3.0规范的快速入门

2.    执行过程分析

3.    常用注解说明

4.    DispatcherServlet详解

5.    HandlerMapping详解

6.    HandlerAdapter详解

7.    View和ViewResolver

8.    请求参数封装的源码分析

9.    @PathVariable注解的实现原理分析

10. 拦截器执行过程分析

11. 自定义异常处理

12. 自定义类型转换器

13. SpringMVC中的文件上传

章节五:综合练习

1.    需求说明

2.    技术选型和表结构介绍

3.    编码实现

4.    课程总结



本文来源传智播客和黑马程序员视频库,原创整理,转载请注明出处,喜欢请分享更多人

文章来源:传智播客和黑马程序员视频库


综合评分4.2

5人已评分

我也要评分

评论打分
你觉得老师讲的怎么样?

评论字数不能超过100字,还剩个字符

发表评价

东隅桑榆

如果参数个数最多的方法有两个或以上,则会报错,ambiguousFactoryMethods != null throw new BeanCreationException(mbd.getResourceDescript

0

2020-09-18 18:15

东隅桑榆

参考Spring 5.1.6源码,ConstructorResolver#instantiateUsingFactoryMethod方法中先给所有的@Bean重载方法排序,然后取方法参数个数最多的那个进行创建Bean,如

0

2020-09-18 18:14

东隅桑榆

day1第21小节Bean注解的使用细节 有问题,@Bean的重载方法 JdbcTemplate createJdbcTemplate(args) 不是按照定义顺序的最后一个被Spring创建。

0

2020-09-18 18:09

XXL

声音太小了

1

2020-02-23 00:52

拉克丝容

努力学习,每天进步一点

0

2019-10-09 10:06