返回首页
苏宁会员
购物车 0
易付宝
手机苏宁

服务体验

店铺评分与同行业相比

用户评价:----

物流时效:----

售后服务:----

  • 服务承诺: 正品保障
  • 公司名称:
  • 所 在 地:
本店所有商品

  • 正版 Spring 5核心原理与30个类手写实战 谭勇德 Spring 5编程实战宝典 原理与新特性 Java Web开
  • 新商品上架
    • 作者: 无著
    • 出版社: 电子工业出版社
    • 出版时间:2019-07
    送至
  • 由""直接销售和发货,并提供售后服务
  • 加入购物车 购买电子书
    服务

    看了又看

    商品预定流程:

    查看大图
    /
    ×

    苏宁商家

    商家:
    江莱图书专营店
    联系:
    • 商品

    • 服务

    • 物流

    搜索店内商品

    商品分类

    商品参数
    • 作者: 无著
    • 出版社:电子工业出版社
    • 出版时间:2019-07
    • ISBN:9787121367410
    • 版权提供:电子工业出版社

    内容介绍

        1996年,Java还只是一个新兴的、初出茅庐的编程语言。2004年3月24日Spring正式对外发布1.0版本。我在2009年开始接触Spring2.0版本,从此爱不释手。Spring的出现,恰如其名开启了全世界Java程序员的春天。如今,Spring已然成为一个生态,使用Spring简直就是一种享受。本书将结合本人多年的Spring使用经验,整理珍藏多年的学习笔记,采用类关系图和代码片段的形式,加以中文注释,通俗、生动、全面深入地剖析了Spring源码的重要细节。同时,本书也作为咕泡学院Java VIP高级课程的教案。要想练就"降龙十八掌”,先得修炼内功。本书用从设计模式开始讲解,希望可以帮助大家更好地理解Spring,让大家知其然,且知其所以然。


    目录

    第1篇 Spring内功心法
    第1章 软件架构设计原则 2
    1.1 开闭原则 2
    1.2 依赖倒置原则 4
    1.3 单一职责原则 7
    1.4 接口隔离原则 10
    1.5 迪米特原则 12
    1.6 里氏替换原则 14
    1.7 合成复用原则 19
    1.8 设计原则总结 20
    第2章 Spring中常用的设计模式 21
    2.1 为什么要从设计模式开始 21
    2.1.1 写出优雅的代码 22
    2.1.2 更好地重构项目 24
    2.1.3 经典框架都在用设计模式解决问题 36
    2.2 工厂模式详解 36
    2.2.1 工厂模式的由来 36
    2.2.2 简单工厂模式 37
    2.2.3 工厂方法模式 41
    2.2.4 抽象工厂模式 43
    2.2.5 利用工厂模式重构的实践案例 47
    2.3 单例模式详解 53
    2.3.1 单例模式的应用场景 53
    2.3.2 饿汉式单例模式 53
    2.3.3 懒汉式单例模式 54
    2.3.4 反射破坏单例 60
    2.3.5 序列化破坏单例 61
    2.3.6 注册式单例模式 68
    2.3.7 线程单例实现ThreadLocal 74
    2.3.8 单例模式小结 75
    2.4 原型模式详解 75
    2.4.1 原型模式的应用场景 75
    2.4.2 浅克隆 77
    2.4.3 深克隆 79
    2.4.4 克隆破坏单例模式 81
    2.4.5 clone()方法的源码 82
    2.5 代理模式详解 82
    2.5.1 代理模式的应用场景 82
    2.5.2 静态代理 83
    2.5.3 动态代理 88
    2.5.4 代理模式与Spring 107
    2.5.5 静态代理和动态代理的本质区别 108
    2.5.6 代理模式的优缺点 109
    2.6 委派模式详解 109
    2.6.1 委派模式的定义及应用场景 109
    2.6.2 委派模式在源码中的体现 111
    2.7 策略模式详解 .114
    2.7.1 策略模式的应用场景 114
    2.7.2 用策略模式实现选择支付方式的业务场景 .114
    2.7.3 策略模式在JDK源码中的体现 122
    2.7.4 策略模式的优缺点 125
    2.7.5 委派模式与策略模式综合应用 125
    2.8 模板模式详解 129
    2.8.1 模板模式的应用场景 129
    2.8.2 利用模板模式重构JDBC操作业务场景 132
    2.8.3 模板模式在源码中的体现 136
    2.8.4 模板模式的优缺点 138
    2.9 适配器模式详解139
    2.9.1 适配器模式的应用场景 139
    2.9.2 重构第三方登录自由适配的业务场景141
    2.9.3 适配器模式在源码中的体现 149
    2.9.4 适配器模式的优缺点 153
    2.10 装饰者模式详解 153
    2.10.1 装饰者模式的应用场景 153
    2.10.2 装饰者模式和适配器模式对比 163
    2.10.3 装饰者模式在源码中的应用 163
    2.10.4 装饰者模式的优缺点 165
    2.11 观察者模式详解 165
    2.11.1 观察者模式的应用场景 165
    2.11.2 观察者模式在源码中的应用 175
    2.11.3 基于Guava API轻松落地观察者模式 176
    2.11.4 观察者模式的优缺点 177
    2.12 各设计模式的总结与对比 177
    2.12.1 GoF 23种设计模式简介 177
    2.12.2 设计模式之间的关联关系 178
    2.12.3 Spring中常用的设计模式 182
    2.13 Spring中的编程思想总结 183
    第2篇 Spring环境预热
    第3章 Spring的前世今生 186
    3.1 一切从Bean开始 187
    3.2 Spring的设计初衷 188
    3.3 BOP编程伊始 188
    3.4 理解BeanFactory 189
    3.5 AOP编程理念 189
    第4章 Spring 5系统架构 191
    4.1 核心容器 192
    4.2 AOP和设备支持192
    4.3 数据访问与集成193
    4.4 Web组件 194
    4.5 通信报文 194
    4.6 集成测试 194
    4.7 集成兼容 194
    4.8 各模块之间的依赖关系 194
    第5章 Spring版本命名规则 196
    5.1 常见软件的版本命名 196
    5.2 语义化版本命名通行规则 197
    5.3 商业软件中常见的修饰词 197
    5.4 软件版本号使用限定 198
    5.5 Spring版本命名规则 199
    第6章 Spring源码下载及构建技巧 200
    6.1 Spring 5源码下载 200
    6.2 基于Gradle的源码构建技巧 201
    6.3 Gradle构建过程中的坑 207
    第3篇 Spring核心原理
    第7章 用300行代码手写提炼Spring核心原理 210
    7.1 自定义配置 210
    7.1.1 配置application.properties文件 210
    7.1.2 配置web.xml文件 210
    7.1.3 自定义注解 211
    7.1.4 配置注解 212
    7.2 容器初始化 213
    7.2.1 实现1.0版本 213
    7.2.2 实现2.0版本 216
    7.2.3 实现3.0版本 223
    7.3 运行效果演示 227
    第8章 一步一步手绘Spring IoC运行时序图 228
    8.1 Spring核心之IoC容器初体验 228
    8.1.1 再谈IoC与DI 228
    8.1.2 Spring核心容器类图 229
    8.1.3 Web IoC容器初体验 232
    8.2 基于XML的IoC容器的初始化 237
    8.2.1 寻找入口 238
    8.2.2 获得配置路径 238
    8.2.3 开始启动 240
    8.2.4 创建容器 242
    8.2.5 载入配置路径 243
    8.2.6 分配路径处理策略 244
    8.2.7 解析配置文件路径 247
    8.2.8 开始读取配置内容 249
    8.2.9 准备文档对象 250
    8.2.10 分配解析策略 251
    8.2.11 将配置载入内存 252
    8.2.12 载入<bean>元素 257
    8.2.13 载入<property>元素 261
    8.2.14 载入<property>子元素 264
    8.2.15 载入<list>子元素 266
    8.2.16 分配注册策略 267
    8.2.17 向容器注册 267
    8.3 基于注解的IoC初始化 270
    8.3.1 注解的前世今生 270
    8.3.2 定位Bean扫描路径 271
    8.3.3 读取注解的元数据 273
    8.3.4 扫描指定包并解析为BeanDefinition 277
    8.3.5 注册注解BeanDefinition 283
    8.4 IoC容器初始化小结 285
    第9章 一步一步手绘Spring DI运行时序图 287
    9.1 Spring自动装配之依赖注入 287
    9.1.1 依赖注入发生的时间 287
    9.1.2 寻找获取Bean的入口 288
    9.1.3 开始实例化 293
    9.1.4 选择Bean实例化策略 297
    9.1.5 执行Bean实例化 299
    9.1.6 准备依赖注入 301
    9.1.7 解析属性依赖注入规则 306
    9.1.8 注入赋值 310
    9.2 Spring IoC容器中那些鲜为人知的细节 314
    9.2.1 关于延时加载 314
    9.2.2 关于FactoryBean和BeanFactory 317
    9.2.3 再述autowiring 322
    第10章 一步一步手绘Spring AOP运行时序图 326
    10.1 Spring AOP初体验 326
    10.1.1 再述Spring AOP应用场景 326
    10.1.2 AOP中必须明白的几个概念 327
    10.1.3 使用Spring AOP的两种方式 329
    10.1.4 切入点表达式的配置规则 333
    10.2 Spring AOP源码分析 334
    10.2.1 寻找入口 334
    10.2.2 选择代理策略 338
    10.2.3 调用代理方法 341
    10.2.4 触发通知 347
    第11章 一步一步手绘Spring MVC运行时序图 352
    11.1 初探Spring MVC请求处理流程 352
    11.2 Spring MVC九大组件 353
    11.2.1 HandlerMapping 353
    11.2.2 HandlerAdapter 353
    11.2.3 HandlerExceptionResolver 354
    11.2.4 ViewResolver 354
    11.2.5 RequestToViewNameTranslator 354
    11.2.6 LocaleResolver 354
    11.2.7 ThemeResolver 355
    11.2.8 MultipartResolver 355
    11.2.9 FlashMapManager 355
    11.3 Spring MVC源码分析 355
    11.3.1 初始化阶段 356
    11.3.2 运行调用阶段 359
    11.4 Spring MVC优化建议 367
    第4篇 Spring手写实战
    第12章 环境准备 370
    12.1 IDEA集成Lombok插件 370
    12.1.1 安装插件 370
    12.1.2 配置注解处理器 373
    12.1.3 使用插件 374
    12.2 从Servlet到ApplicationContext 375
    12.3 准备基础配置376
    12.3.1 application.properties配置.377
    12.3.2 pom.xml配置 377
    12.3.3 web.xml配置 378
    12.3.4 GPDispatcherServlet 378
    第13章 IoC顶层结构设计 380
    13.1 Annotation(自定义配置)模块 380
    13.1.1 @GPService 380
    13.1.2 @GPAutowired 381
    13.1.3 @GPController 381
    13.1.4 @GPRequestMapping 382
    13.1.5 @GPRequestParam 382
    13.2 core(顶层接口)模块 382
    13.2.1 GPFactoryBean 382
    13.2.2 GPBeanFactory 383
    13.3 beans(配置封装)模块 383
    13.3.1 GPBeanDefinition 383
    13.3.2 GPBeanWrapper 384
    13.4 context(IoC容器)模块 385
    13.4.1 GPAbstractApplicationContext 385
    13.4.2 GPDefaultListableBeanFactory 385
    13.4.3 GPApplicationContext385
    13.4.4 GPBeanDefinitionReader 388
    13.4.5 GPApplicationContextAware 391
    第14章 完成DI模块的功能 392
    14.1 从getBean()方法开始 393
    14.2 GPBeanPostProcessor 395
    第15章 完成MVC模块的功能 396
    15.1 MVC顶层设计 396
    15.1.1 GPDispatcherServlet 396
    15.1.2 GPHandlerMapping 402
    15.1.3 GPHandlerAdapter 403
    15.1.4 GPModelAndView 406
    15.1.5 GPViewResolver 406
    15.1.6 GPView 407
    15.2 业务代码实现409
    15.2.1 IQueryService 409
    15.2.2 QueryService 410
    15.2.3 IModifyService 410
    15.2.4 ModifyService 411
    15.2.5 MyAction 412
    15.2.6 PageAction 413
    15.3 定制模板页面414
    15.3.1 first.html 414
    15.3.2 404.html 414
    15.3.3 500.html 415
    15.4 运行效果演示415
    第16章 完成AOP代码织入 417
    16.1 基础配置 .417
    16.2 完成AOP顶层设计 418
    16.2.1 GPJoinPoint 418
    16.2.2 GPMethodInterceptor .419
    16.2.3 GPAopConfig 419
    16.2.4 GPAdvisedSupport 420
    16.2.5 GPAopProxy 422
    16.2.6 GPCglibAopProxy 423
    16.2.7 GPJdkDynamicAopProxy 423
    16.2.8 GPMethodInvocation425
    16.3 设计AOP基础实现 427
    16.3.1 GPAdvice 427
    16.3.2 GPAbstractAspectJAdvice 427
    16.3.3 GPMethodBeforeAdvice 428
    16.3.4 GPAfterReturningAdvice 429
    16.3.5 GPAfterThrowingAdvice 430
    16.3.6 接入getBean()方法 430
    16.4 织入业务代码432
    16.4.1 LogAspect 432
    16.4.2 IModifyService 433
    16.4.3 ModifyService 434
    16.5 运行效果演示435
    第5篇 Spring数据访问
    第17章 数据库事务原理详解 438
    17.1 从Spring事务配置说起 438
    17.2 事务的基本概念 439
    17.3 事务的基本原理 439
    17.4 Spring事务的传播属性 440
    17.5 数据库事务隔离级别 441
    17.6 Spring中的事务隔离级别 441
    17.7 事务的嵌套 442
    17.8 Spring事务API架构图 444
    17.9 浅谈分布式事务 444
    第18章 Spring JDBC源码初探 446
    18.1 异常处理 447
    18.2 config模块 448
    18.3 core模块450
    18.4 DataSource 456
    18.5 object模块 457
    18.6 JdbcTemplate 458
    18.7 NamedParameterJdbcTemplate 458
    第19章 基于Spring JDBC手写ORM框架 459
    19.1 实现思路概述459
    19.1.1 从ResultSet说起 459
    19.1.2 为什么需要ORM框架 464
    19.2 搭建基础架构467
    19.2.1 Page 467
    19.2.2 ResultMsg 470
    19.2.3 BaseDao 471
    19.2.4 QueryRule 473
    19.2.5 Order.479
    19.3 基于Spring JDBC实现关键功能 480
    19.3.1 ClassMappings 480
    19.3.2 EntityOperation 483
    19.3.3 QueryRuleSqlBuilder 488
    19.3.4 BaseDaoSupport 498
    19.4 动态数据源切换的底层原理 507
    19.4.1 DynamicDataSource 508
    19.4.2 DynamicDataSourceEntry 509
    19.5 运行效果演示510
    19.5.1 创建Member实体类 510
    19.5.2 创建Order实体类 511
    19.5.3 创建MemberDao 512
    19.5.4 创建OrderDao 512
    19.5.5 修改db.properties文件 514
    19.5.6 修改application-db.xml文件 515
    19.5.7 编写测试用例 516
    第6篇 Spring经验分享
    第20章 Spring 5新特性总结 520
    20.1 升级到Java SE 8和Java EE 7 520
    20.2 反应式编程模型 521
    20.3 使用注解进行编程 521
    20.4 函数式编程 522
    20.5 使用 REST 端点执行反应式编程 523
    20.6 支持HTTP/2 523
    20.7 Kotlin和Spring WebFlux 523
    20.8 使用Lambda表达式注册Bean 524
    20.9 Spring Web MVC 支持最新的 API 524
    20.10 使用JUnit 5执行条件和并发测试 525
    20.11 包清理和弃用 526
    20.12 Spring核心和容器的一般更新 526
    20.13 我如何看Spring 5 527
    第21章 关于Spring的经典高频面试题 528
    21.1 什么是Spring框架,Spring框架有哪些主要模块 528
    21.2 使用Spring框架能带来哪些好处 528
    21.3 什么是控制反转(IoC),什么是依赖注入 529
    21.4 在Java中依赖注入有哪些方式 529
    21.5 BeanFactory和ApplicationContext有什么区别 530
    21.6 Spring提供几种配置方式来设置元数据 530
    21.7 如何使用XML配置方式配置Spring .531
    21.8 Spring提供哪些配置形式 532
    21.9 怎样用注解的方式配置Spring 533
    21.10 请解释Spring Bean的生命周期 534
    21.11 Spring Bean作用域的区别是什么 535
    21.12 什么是Spring Inner Bean 535
    21.13 Spring中的单例Bean是线程安全的吗 536
    21.14 请举例说明如何在Spring中注入一个Java集合 536
    21.15 如何向Spring Bean中注入java.util.Properties 537
    21.16 请解释Spring Bean的自动装配 538
    21.17 自动装配有哪些局限性 538
    21.18 请解释各种自动装配模式的区别 539
    21.19 请举例解释@Required注解 539
    21.20 请举例说明@Qualifier注解 540
    21.21 构造方法注入和设值注入有什么区别 540
    21.22 Spring中有哪些不同类型的事件 541
    21.23 FileSystemResource和ClassPathResource有什么区别 542
    21.24 Spring中用到了哪些设计模式 542
    21.25 在Spring中如何更有效地使用JDBC 543
    21.26 请解释Spring中的IoC容器 543
    21.27 在Spring中可以注入null或空字符串吗 543

    作者介绍

        谭勇德(Tom)10余年Java开发经验。咕泡学院联合创始人。在大型IT公司担任过CTO、系统架构师。精通Java语言、JS、CSS、AS、PHP等;负责过多个大型分布式系统的微服务架构的技术改造;多年以来对Spring框架有深入研究及独特见解;开发过多套企业内部UI框架和ORM框架。热衷于分享经验,共同进步。不只做一个技术者,更要做一个思考者。


    关联推荐

    1.具有Spirng开发经验,想深入了解Spring实现原理 2.看源码不知如何下手 3.设计模式在源码中的应用

    1
    • 商品详情
    • 内容简介

    售后保障

    最近浏览

    猜你喜欢

    该商品在当前城市正在进行 促销

    注:参加抢购将不再享受其他优惠活动

    x
    您已成功将商品加入收藏夹

    查看我的收藏夹

    确定

    非常抱歉,您前期未参加预订活动,
    无法支付尾款哦!

    关闭

    抱歉,您暂无任性付资格

    此时为正式期SUPER会员专享抢购期,普通会员暂不可抢购