前言
随着信息技术的飞速发展和商业竞争的加剧,开发高效、安全的企业级应用系统已经成为各企业提高竞争能力的重要手段。分布式的、高性能的企业级开发平台被越来越多的开发人员使用,Java EE(Java Platform,Enterprise Edition)是这些平台的优秀代表之一。为了缩减开发成本、提高企业软件开发应用的质量,Java EE为开发者提供了简化的、基于组件的设计方法,用于开发、集成和部署应用程序。Java EE还提供了多层分布式应用模式,使组件具有重用的能力。在Java EE应用开发过程中,框架和模式是很重要的软件重用技术,它们的设计和应用在很大程度上决定了Java EE项目的质量。MVC设计模式分离了数据的控制和数据的表现功能,在实现多层Web应用系统中具有明显的优势。Spring MVC是一个基于Java EE平台、实现了MVC设计模式的框架,它全面减轻了构建多层Web应用的负担,提供了可复用的软件架构。Spring Boot引入了自动配置的概念,让项目配置变得更容易,进一步简化了Spring应用的整个搭建和开发的过程。
近几年来,企业的IT环境和IT架构也逐渐发生变革,从过去的单体架构(Monolithic架构)发展为至今广为流行的微服务架构(Microservice架构)。微服务是一种架构风格,可以给软件应用开发带来很大的便利,但微服务的实施和落地面临很大的挑战,因此需要一套完整的微服务解决方案。Spring Cloud正是为了适应这种需要而诞生的。它是一个基于Spring Boot实现的服务治理工具包,在微服务架构中用于管理和协调服务的微服务。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现与注册、配置中心、消息总线、负载均衡、熔断器、数据监控等,都可以使用Spring Boot的开发风格实现一键启动和部署。
本书首先分析了企业级应用的特点和常用技术、最新的开发环境、建模方法,以及架构模式;然后重点研究了主流的架构技术Spring Boot、持久化ORM技术Spring Data JPA和MyBatis、安全认证技术Spring Security、微服务技术Spring Cloud,以及统一认证技术OAuth2;同时着重研究了如何结合实际应用进行合理的、快捷的、安全的设计,为实际设计和开发一个企业级应用奠定了基础。本书的主要特点包括:
●根据市场需求的应用精心选取内容,合理组织内容结构。
●注意新方法、新技术的引用,突出实用内容。
●注重方案的选择和设计。
通过系统地学习本书,读者可以将Java EE的设计理念快速应用于生产实践中,为开发团队和企业提供坚不可摧的竞争力。
全书共7章,内容依次为:Java EE与企业级应用开发、基于Spring Boot构建项目、基于Spring Data JPA实现数据访问层、基于MyBatis实现数据访问层、基于Spring Security实现认证和授权、微服务架构与Spring Cloud、在微服务架构中整合OAuth2。
由于时间和作者水平所限,书中难免存在疏漏和不足之处,恳请读者批评指正,以使本书得以改进和完善。
作者
2020年8月于北京