新書推薦:
《
铝合金先进成型技术
》
售價:NT$
1214.0
《
英雄之旅:把人生活成一个好故事
》
售價:NT$
398.0
《
分析性一体的涌现:进入精神分析的核心
》
售價:NT$
556.0
《
火枪与账簿:早期经济全球化时代的中国与东亚世界
》
售價:NT$
352.0
《
《全面与进步跨太平洋伙伴关系协定》国有企业条款研究
》
售價:NT$
449.0
《
银行业架构网络BIAN(全球数字化时代金融服务业框架)(数字化转型与创新管理丛书)
》
售價:NT$
449.0
《
金托邦:江湖中的沉重正义
》
售價:NT$
275.0
《
易经今解:释疑·解惑·见微
》
售價:NT$
403.0
|
內容簡介: |
Java EE技术是当今流行的Web程序开发技术之一。本书结合企业级应用的需要,对Java EE的主流技术进行了研究,并结合应用实际讲解了其开发环境、建模方法、架构模式,以及基于主流架构技术的设计方法。全书共7章,内容依次为:Java EE与企业级应用开发、基于Spring Boot构建项目、基于Spring Data JPA实现数据访问层、基于MyBatis实现数据访问层、基于Spring Security实现认证和授权、微服务架构与Spring Cloud、在微服务架构中整合OAuth2。另外,本书通过一个网上人才中心系统的设计案例,分别介绍了单体架构和微服务架构涉及的核心技术,演示了构建一个安全可靠、稳定高效、易于扩展的应用系统的方法。
|
關於作者: |
杨树林,教授,硕士研究生导师,北京市高校优秀共产党员,教学名师,中国版权标准化技术委员会委员,北京市高校信息化研究会理事。近几年主持横纵向课题9项,参与国家自然科学基金等科研项目7项,出版学术专著2 部,发表学术论文30余篇,编著教材13部,获评北京市精品教材1 部。擅长软件架构技术和软件设计方法研究,对Java EE技术有丰富的应用经验。
|
目錄:
|
目录
第1章 Java EE与企业级应用开发 1
1.1 Java EE概述 1
1.1.1 企业级应用及其特点 1
1.1.2 Java EE及其常用技术 2
1.2 搭建Java EE开发环境 5
1.2.1 安装与配置JDK 5
1.2.2 安装与使用MySQL 6
1.2.3 安装集成开发工具IDEA 8
1.2.4 安装Tomcat 14
1.3 建模工具与编码规范化 17
1.3.1 UML建模工具PlantUML 17
1.3.2 数据库建模工具Workbench 25
1.3.3 IDEA数据库管理工具 26
1.3.4 基本编码规范与常用技术 29
1.3.5 Spring Boot集成Swagger2 35
1.4 Java EE项目的分层架构模式 39
1.4.1 分层架构模式概述 39
1.4.2 Java Web应用中的三层结构 40
1.4.3 结合MVC模式的分层结构 41
1.4.4 网上人才中心系统分析与设计 42
第2章 基于Spring Boot构建项目 54
2.1 Spring Boot概述 54
2.1.1 Spring及Spring MVC 54
2.1.2 Spring Boot 56
2.2 使用IDEA创建Spring Boot项目 57
2.2.1 创建Spring Boot项目 57
2.2.2 根据项目需要引入其他依赖 60
2.2.3 按分层结构组织程序结构 63
2.2.4 建立分页工具类 65
2.2.5 应用程序基本配置 67
2.3 实体类与接口设计 67
2.3.1 实体类设计 67
2.3.2 业务逻辑层接口设计 69
2.3.3 数据访问层接口设计 69
2.4 数据访问层与业务逻辑层实现 69
2.4.1 数据访问层实现 69
2.4.2 对数据访问层进行单元测试 72
2.4.3 业务逻辑层实现 75
2.5 控制层实现 76
2.5.1 控制层设计的基本原理 76
2.5.2 控制类基类设计 78
2.5.3 实现其他控制类 79
2.5.4 对控制层进行单元测试 81
2.6 视图层实现 83
2.6.1 系统首页设计 84
2.6.2 管理员视图设计 85
2.6.3 部署运行程序 95
第3章 基于Spring Data JPA实现数据访问层 98
3.1 Spring Data JPA概述 98
3.1.1 ORM与JPA 98
3.1.2 Spring Data JPA 99
3.1.3 Spring Data JPA接口和类 100
3.2 Spring Boot与Spring Data JPA整合 103
3.2.1 Spring Data JPA基本配置 103
3.2.2 数据源配置优化 104
3.2.3 基于Spring Data JPA实现Dao层 107
3.2.4 Spring Data JPA扩展 108
3.3 实体对象映射 110
3.3.1 实体映射基础 110
3.3.2 实体关系映射 112
3.3.3 使用逆向工程生成实体类 117
3.3.4 网上人才中心系统实体类定义 119
3.4 JPA数据操作方法 123
3.4.1 使用预定义的方法查询 123
3.4.2 使用自定义方法查询 126
3.4.3 查询结果格式 128
3.4.4 网上人才中心系统数据访问层设计 129
3.4.5 网上人才中心系统业务逻辑层设计 129
第4章 基于MyBatis实现数据访问层 132
4.1 MyBatis技术概述 132
4.1.1 MyBatis简介 132
4.1.2 MyBatis与Spring Data JPA比较 132
4.1.3 MyBatis核心类及工作原理 133
4.1.4 映射器与Mapper实例 135
4.2 Spring Boot与MyBatis整合 137
4.2.1 MyBatis基本配置 137
4.2.2 基于MyBatis实现Dao层 137
4.2.3 MyBatis映射器配置 140
4.3 基于MyBatis Generator的逆向工程 145
4.3.1 MyBatis Generator基础 145
4.3.2 MyBatis Generator扩展 149
4.3.3 使用自动生成的代码操作数据库 151
4.4 基于MyBatis-Plus的逆向工程 152
4.4.1 MyBatis-Plus基础 152
4.4.2 MyBatis-Plus扩展 156
4.4.3 基于MyBatis-Plus的数据操作 159
第5章 基于Spring Security实现认证和授权 162
5.1 Spring Security概述 162
5.1.1 Spring Security简介 162
5.1.2 Spring Security 原理 162
5.1.3 Spring Security配置基础 164
5.2 网上人才中心系统权限体系设计与开发 169
5.2.1 权限相关数据结构及实体类设计 169
5.2.2 权限相关数据访问层设计 174
5.2.3 权限相关业务逻辑层设计 178
5.2.4 权限相关控制层设计 180
5.2.5 权限相关视图层设计 187
5.3 权限相关组件设计及其配置设计 193
5.3.1 权限相关组件设计 193
5.3.2 验证码实现相关设计 197
5.3.3 权限相关配置设计 200
第6章 微服务架构与Spring Cloud 203
6.1 微服务架构概述 203
6.1.1 单体架构与微服务架构 203
6.1.2 Spring Cloud概述 206
6.1.3 Spring Cloud重要组件介绍 207
6.2 网上人才中心系统微服务工程设计 208
6.2.1 微服务设计基础 208
6.2.2 微服务项目结构 209
6.2.3 创建微服务项目 210
6.2.4 创建模块 215
6.3 基础微服务项目设计 216
6.3.1 创建服务注册中心 216
6.3.2 创建配置管理中心 217
6.3.3 创建微服务网关 221
6.4 REST API微服务设计 223
6.4.1 领域业务设计 223
6.4.2 查询对象设计 227
6.4.3 REST API应用设计 228
6.4.4 RESTful的HTTP接口设计 236
6.5 视图微服务设计 239
6.5.1 Thymeleaf技术 239
6.5.2 Web UI微服务设计 241
6.5.3 统一入口微服务设计 250
第7章 在微服务架构中整合OAuth2 259
7.1 基于OAuth2实现SSO的原理 259
7.1.1 OAuth2基本原理 259
7.1.2 JWT概述 260
7.1.3 在微服务架构中实现SSO 261
7.2 OAuth2授权服务器模块设计 262
7.2.1 OAuth2授权服务器模块 262
7.2.2 对授权服务器进行配置 264
7.2.3 登录管理及安全配置 267
7.2.4 控制器和用户登录界面设计 270
7.3 实现微服务应用访问控制 272
7.3.1 对网关Zuul进行配置 272
7.3.2 创建安全模块 273
7.3.3 配置微服务应用 280
参考文献 281
|
內容試閱:
|
前言
随着信息技术的飞速发展和商业竞争的加剧,开发高效、安全的企业级应用系统已经成为各企业提高竞争能力的重要手段。分布式的、高性能的企业级开发平台被越来越多的开发人员使用,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月于北京
|
|