《深入浅出 Spring Boot 3.x》预计3月份发版

各位,目前本来新书《深入浅出 Spring Boot 3.x》已经到了最后编辑排版阶段,即将在3月份发布。

目录:

现在把目录截取给大家:

主要内容:

本书内容安排如下。
1 章和第 2 章讲解 Spring Boot 和传统 Spring 开发的区别,以及如何搭建 Spring Boot 开发
环境。 前言 3
3 章和第 4 章讨论在全注解下的 Spring 基础 IoC AOP ,让初学者可以无缝对接 Spring
Boot 的全注解开发方式。
5 章和第 6 章讲解数据库的开发、基于 SSM Spring MVC+Spring+MyBatis )框架的流行
以及数据库事务的重要性,除了讨论传统的 JDBC JPA 开发,还会重点讨论和 MyBatis
框架的整合,以及 Spring 数据库事务的编程。
7 章和第 8 章主要讲解互联网中广泛使用的两种 NoSQL 数据库(即 Redis MongoDB ),
使用它们可以极大地提高系统的性能。
9 章至第 12 章主要讲解 Spring Boot 下的 Spring MVC 的各种应用。第 9 章初识 Spring MVC
概述 Spring MVC 的全流程和常见的组件;第 10 章深入 Spring MVC 的开发和应用,让读者
能够掌握各种 Spring Web 后端的开发技巧;第 11 章讲解如何构建 REST 风格的网站,因为
当前各个微服务是以 REST 风格请求相互融合的,所以时下它已经成为一种广泛使用的风
格;第 12 章讲解 Spring Security ,通过它可以保护我们的站点,使其远离各种各样的攻击,
保证网站安全。
13 章讲解一些 Spring 常用的技术,如异步线程、异步消息和定时器等,以满足企业的其
他开发需要。
14 章讲解 Spring Boot 下的 SSM Spring MVC+Spring+MyBatis )框架整合,并通过抢购
业务讲述互联网中的高并发与锁的应用。
15 章讲解 Spring Boot 的打包、测试、监控、预先编译和 Docker 容器部署技术。
16 章讲解基于 Spring Cloud Alibaba 的微服务开发,带领读者学习国内流行的微服务架构
的开发

相对于《深入浅出Spring Boot 2.x》升级的内容

本书在 2.x 版的基础上进行如下升级。
全面拥抱最新且被长时间支持的技术,包括 Java 17 Jakarta EE 9 Spring 6.x Spring Boot
3.x 等。
尽量采用 Java 8 和其之后的新语法编写代码。
在前端技术上,删除 2.x 版采用的 JQuery (当前已经很少用了),采用流行的前端框架 Vue
推荐使用的 Axios
使用 IntelliJ IDEA 作为开发默认的 IDE ,而非 2.x 版的 Eclipse
增加预先编译和 Docker 容器部署技术的讲解,更贴近企业级微服务的应用。
在微服务章节,剔除 2.x 版中过时的 Spring Cloud NetFlix ,拥抱目前国内流行的 Spring Cloud
Alibaba
2.x 版的基础上,进一步完善代码样例和技术细节。

采用新语法的Java代码展示

这里来段新书的代码:

@RequestMapping(value = "/valid/validate")
@ResponseBody
public Map<String, Object> validate(
        @Valid @RequestBody ValidatorPojo vp, Errors errors) {
    var errMap = new HashMap<String, Object>(); // ①
    // 获取错误列表
    var oes = errors.getAllErrors(); 
    for (ObjectError oe : oes) {
        String key = null;
        String msg = null;
        // 字段错误
        if (oe instanceof FieldError fieldError) { // 注意instanceof的新语法 ②
            key = fieldError.getField();// 获取错误验证字段名
        } else {
            // 非字段错误
            key = oe.getObjectName();// 获取验证对象名称
        }
        // 错误信息
        msg = oe.getDefaultMessage();
        errMap.put(key, msg);
    }
    return errMap;
}

注意上面的代码,引入了新的Java语法:

  • 代码①处,关键字var的使用,让Java编译器自己推断类型;
  • 代码②处,instanceof关键字的使用,判定后,省去强制转换

相关推荐

  1. 3月份 月总结

    2024-02-23 15:58:03       17 阅读
  2. 内核升级!IvorySQL 3.1

    2024-02-23 15:58:03       30 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-23 15:58:03       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-23 15:58:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-23 15:58:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-23 15:58:03       18 阅读

热门阅读

  1. Docker安装Postgresql12

    2024-02-23 15:58:03       25 阅读
  2. docker 部署django项目

    2024-02-23 15:58:03       18 阅读
  3. MyBatis Plus中的动态表名实践

    2024-02-23 15:58:03       26 阅读
  4. 0221 解决万得导出数据excel无法python读入的问题

    2024-02-23 15:58:03       29 阅读