还剩42页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
《框架》教学课件Spring课应为本程旨在帮助您深入理解Spring框架,掌握其核心原理和用技巧,您的开坚础Java发之旅提供实基框架简介Spring定义目标开础标轻级开级Spring框架是一个源的Java平台,它提供了全面的基设施Spring的目是提供一个量、全面的框架,用于发企业来应开简开过应应过简开过应质支持Java用程序的发,化了发程并提高了用程序Java用程序,并通化发程,提高用程序的量和可质维的量护性发展历程Spring20021Rod Johnson发表《Expert One-on-One J2EE DesignandDevelopment》,引入了Spring框架20042Spring
1.0发布,包含核心IoC容器、AOP和JDBC支持20073Spring
2.0发布,引入了Web MVC框架和注解支持20104对Spring
3.0发布,引入了Java5及更高版本的支持20135对Spring
4.0发布,引入了Java8的支持20176对应编Spring
5.0发布,引入了响式程的支持使用优势Spring简化开发提高可测试性计调应Spring提供了丰富的功能,例如Spring的设强松耦合,使数访问进单测试IoC容器、AOP和据支持,用程序更容易行元简开过化了发程增强可扩展性活跃社区支持计许庞区Spring框架的模块化设允您Spring拥有大的社,提供丰选择档区根据需要和使用不同的模块富的文、教程和社支持模块概述SpringSpring CoreSpring DataSpring WebSpring Security对数储术应验证Spring框架的核心,提供IoC提供各种据存技的支提供构建Web用程序的框架,提供安全框架,用于身份简数访问权容器和AOP支持持,化据包括MVC框架和WebFlux和授容器IoC依赖注入控制反转负责创应负责对创IoC容器建和管理用程序中IoC容器象的建和管理,而对过赖将们关应码的象,并通依注入它联不是由用程序代直接控制来起管理Bean过应IoC容器通配置管理用程序中的对赖关象,并提供生命周期管理和依系注入容器基础配置IoC配置注解配置XML称赖关来使用XML文件配置IoC容器,定义Bean的名、类型和依使用注解配置IoC容器,例如`@Component`、系`@Service`、`@Repository`等容器管理IoC bean定义Bean过称通配置定义Bean,包括Bean的名、类型、作用域、生命周期等信息创建Bean创进赖关IoC容器根据配置建Bean实例,并行必要的依系注入生命周期管理Bean负责销IoC容器Bean的初始化和毁,以及生命周期事件的处理容器高级话题IoC范围后置处理器1Bean2Bean创定义Bean的作用域,例如在Bean建或初始化之前或执扩singleton、prototype、之后行特定操作,用于展request等Bean的功能事件监听3监创销听Bean生命周期的事件,例如建、初始化、毁等介绍AOP面向切面编程1编将横关逻辑码维AOP是一种程思想,它切注点从业务中分离,提高代的模块化和可护性切面2横关记录定义切注点,例如日志、事务管理、安全控制等切点3应指定切面用于哪些方法或类通知4执定义在切点匹配到的方法或类上行的操作,例如before、after、around等目标对象5被切面增强的方法或类编程模型AOP代理1来现横关对将拦标对调执AOP使用代理实切注点的分离,代理象截目象的用,并行通知通知类型2AOP提供了多种通知类型,例如before、after、around、after-returning、after-throwing等切点表达式3来使用表达式指定切点,例如匹配特定方法、类、包等使用场景AOP12日志记录事务管理调记录调进在方法用前后日志信息在方法用前后行事务管理34安全控制性能监控调进验证调进监在方法用前后行安全在方法用前后行性能控Spring JDBC简化事务管理JDBC简证数Spring JDBC提供了模板类,例如`JdbcTemplate`,化了Spring JDBC提供了事务管理功能,保据操作的一致性码JDBC操作,减少了样板代事务管理Spring声明式事务管理1来编写码使用注解或XML配置声明事务管理,无需大量代编程式事务管理2使用`PlatformTransactionManager`和来`TransactionStatus`手动管理事务事务传播行为3调传为定义事务在不同方法用之间的播行,例如REQUIRED、REQUIRES_NEW等入门Spring MVC架构应用程序MVC Web应Spring MVC框架遵循MVC架构模式,Spring MVC框架用于构建Web用将应为图请应用程序分模型、视和控制器程序,处理HTTP求和响三个部分RESTful APISpring MVC框架支持RESTful API开简发,提供洁的API接口组件Spring MVC请求处理Spring MVC请求接收请请应DispatcherServlet接收HTTP求,并根据求URL找到相的ControllerController处理请执逻辑对Controller处理求,行业务,并返回ModelAndView象视图解析图称对应ViewResolver根据ModelAndView中的视名找到的View视图渲染数终应内View渲染据,生成最的响容视图处理Spring MVCJSPThymeleaf为图进为图使用JSP作视模板,可以使用Thymeleaf作视模板,态语行动页面渲染提供自然模板言和更强大的功能FreeMarker JSON为图数为应使用FreeMarker作视模板,返回JSON据作响,用于语开提供灵活的模板言和强大的功RESTful API发能高级话题SpringMVC异常处理数据验证使用`@ExceptionHandler`使用`@Valid`注解和来来验证数注解处理Controller中发生Validator接口据的异常国际化来现使用`LocaleResolver`和MessageSource接口实国际化概述Spring Boot快速开发1简应开约则Spring Boot化了Spring用程序的发,提供了自动配置和定优于配置的原独立运行2应独额Spring Boot用程序可以立运行,无需外的Web服务器嵌入式服务器3内Spring Boot嵌了Tomcat、Jetty或Undertow等Web服务器,方便部署简化依赖管理4简赖赖库Spring Boot提供了化的依管理,方便添加依监控和管理5监应Spring Boot提供了用于控和管理用程序的工具,例如Actuator自动配置Spring Boot自动配置机制1应赖库Spring Boot根据用程序的依自动配置Bean,无需手动配置约定优于配置2约开员Spring Boot提供了一系列定,减少了发人的配置工作自定义配置3来认可以自定义配置覆盖Spring Boot的默配置开发Spring Bootweb12嵌入式服务器Web控制器内创Spring Boot嵌了Tomcat、Jetty使用`@RestController`注解建请或Undertow等Web服务器,方便REST控制器,处理HTTP求部署34模板引擎安全Spring Boot支持Thymeleaf、Spring Boot集成了SpringFreeMarker、Mustache等模板引擎Security,提供安全功能数据访问Spring BootSpring Data JPASpring DataJDBC Spring Data MongoDBSpring Boot集成了Spring Data JPA,Spring Boot集成了Spring DataJDBC,Spring Boot集成了Spring Data简简简化了JPA操作化了JDBC操作MongoDB,化了MongoDB操作测试SpringBoot单元测试1创测试测试应使用`@SpringBootTest`注解建集成,用程序的各个部分功能测试2创测试测试应使用`@WebMvcTest`注解建功能,Web用程序的各个功能端到端测试3创使用`@SpringBootTest`注解和`TestRestTemplate`测试测试应建端到端,用程序的整体功能介绍Spring DataJPAJPA RepositorySpring DataJPA是一个基于JPA的Spring DataJPA提供了数访问简数据框架,它化了JPA操作,Repository接口,可以方便地定义访问并提供了强大的功能据方法查询方法来SpringDataJPA支持使用方法名简定义查询,化了查询操作查询SpringDataJPA方法名查询查询JPQL来语来使用方法名定义查询,例如使用JPQL言定义查询,可进杂`findByLastName`、以行更复的查询`findAllByFirstName`等查询原生查询Criteria SQL来来使用Criteria API定义查询,使用原生SQL定义查询,可以态访问数库可以动构建查询据的特定功能实践SpringDataJPA实体类标记定义实体类,并使用`@Entity`注解接口Repository继定义Repository接口,承`JpaRepository`接口,并添加自定义查询方法数据访问来访问数创使用Repository接口据,例如建、更新、删除、查询等概述Spring Security安全框架1验证权数Spring Security是一个强大的安全框架,用于身份、授和据保护身份验证2验证单Spring Security提供了多种身份方法,例如基于表、基于LDAP、基于OAuth等授权3权权对资访问权Spring Security提供了基于角色或基于限的授机制,控制用户源的限数据保护4数签Spring Security提供了据保护功能,例如加密、解密、名等认证Spring Security认证过程1过滤链来请进验证Spring Security使用器处理求,并行身份认证提供者2认证Spring Security提供了多种提供者,例如`DaoAuthenticationProvider`、`LdapAuthenticationProvider`等认证成功3认证将创对成功后,Spring Security建一个Authentication将象,并其放入SecurityContext中授权Spring Security12访问控制授权规则访问权规则Spring Security使用控制列表Spring Security提供了多种授,访问来ACL或基于角色的控制RBAC例如`@PreAuthorize`、对资访问权控制用户源的限`@PostAuthorize`等3访问拒绝没访问权如果用户有限,Spring将绝访问错误Security拒,并返回信息实践Spring Security配置用户管理访问控制来使用`@EnableWebSecurity`注解启用使用`UserDetailsService`接口管理使用`@PreAuthorize`或规则来对Spring Security,并配置安全用户,并提供用户信息`@PostAuthorize`注解控制用户资访问权源的限介绍Spring WebFlux响应式编程函数式编程应数编Spring WebFlux是一个基于响式Spring WebFlux支持函式程,编来编写简程的Web框架,支持非阻塞式I/O,可以使用lambda表达式更应码提高用程序的性能和吞吐量洁的代应用程序Web应Spring WebFlux用于构建Web用请应程序,处理HTTP求和响编程模型Spring WebFluxFlux1数数项表示异步据流,用于处理多个据Mono2单数项单数项表示异步个据,用于处理个据WebHandler3请对处理Web求,并返回Flux或Mono象函数式编程Spring WebFlux路由处理程序数来请数来使用函式路由定义HTTP使用函式处理程序处理规则请应求的路由HTTP求,并返回响组合数编组来组可以使用函式程的合器合多个路由和处理程序高级话题Spring WebFlux错误处理数据验证使用`@ExceptionHandler`使用`@Valid`注解和来错误来验证数注解处理Validator接口据国际化来现使用`LocaleContextResolver`和MessageSource接口实国际化概述Spring Cloud微服务框架1应Spring Cloud是一个微服务框架,提供了构建和管理微服务用程序所需的功能服务注册与发现2册现Spring Cloud提供了服务注与发机制,例如Eureka、Consul等服务网关3关Spring Cloud提供了服务网,例如Zuul、Gateway等配置中心4Spring Cloud提供了配置中心,例如Config Server熔断器5断Spring Cloud提供了熔器,例如Hystrix、Resilience4j等服务注册与发现Spring Cloud服务注册1时册册微服务启动向注中心注自己服务发现2费册获服务消者从注中心取服务提供者的地址列表负载均衡3费选择进调服务消者从服务提供者地址列表中一个地址行用,并现负载实均衡服务网关Spring Cloud12统一入口路由规则关为请关规则来将请服务网作所有求的统一入口,服务网可以使用路由求负载转提供安全、路由、均衡等功能发到不同的服务3过滤器关过滤来进服务网可以使用器行身份验证权记录、授、日志等操作配置中心Spring Cloud集中管理版本控制动态更新应对进态配置中心集中管理用程序的配置信息,配置中心可以配置信息行版本控制,配置中心可以动更新配置信息,无需重应方便统一管理和更新方便回滚和管理启用程序安全Spring Cloud认证1验证Spring CloudSecurity提供了身份机制,例如OAuth
2、JWT等授权2权对资Spring CloudSecurity提供了授机制,控制用户源的访问权限安全策略3数Spring CloudSecurity提供了安全策略,例如据加密、安审计全等熔断器Spring Cloud故障隔离快速失败断将断败时熔器可以故障隔离,防止故熔器可以快速失,避免长应障蔓延到其他服务间等待响容错机制断错级试熔器提供容机制,例如降、重等消息驱动Spring Cloud消息队列消息总线队线Spring Cloud支持各种消息列,例Spring Cloud提供了消息总,用于传如RabbitMQ、Kafka等在微服务之间递消息事件驱动驱Spring Cloud支持事件动架构,可队来传以使用消息列递事件案例实践Spring Cloud电子商务平台使用Spring Cloud构建一个电子商务平台,包括用户服务、商订单品服务、服务等金融服务平台账使用Spring Cloud构建一个金融服务平台,包括户服务、交易服务、风控服务等社交网络平台络使用Spring Cloud构建一个社交网平台,包括用户服务、帖评论子服务、服务等课程总结与展望过课习应通本程的学,您已经掌握了Spring框架的核心概念和用技巧,可以自开应来将继续断信地发各种Java用程序未,Spring框架发展,并不推出新对术为功能,例如云原生、Serverless、人工智能等技的支持,您提供更强大开选择的发工具和更丰富的。
个人认证
优秀文档
获得点赞 0