新書推薦:
《
不挨饿快速瘦的减脂餐
》
售價:NT$
305.0
《
形而上学与存在论之间:费希特知识学研究(守望者)(德国古典哲学研究译丛)
》
售價:NT$
504.0
《
卫宫家今天的饭9 附画集特装版(含漫画1本+画集1本+卫宫士郎购物清单2张+特制相卡1张)
》
售價:NT$
602.0
《
化妆品学原理
》
售價:NT$
254.0
《
万千教育学前·与幼儿一起解决问题:捕捉幼儿园一日生活中的教育契机
》
售價:NT$
214.0
《
爱你,是我做过最好的事
》
售價:NT$
254.0
《
史铁生:听风八百遍,才知是人间(2)
》
售價:NT$
254.0
《
量子网络的构建与应用
》
售價:NT$
500.0
|
編輯推薦: |
《名师讲坛Spring实战开发(Redis SpringDataJPA SpringMVC SpringSecurity)》内容特色如下。
(1)15年Spring开发与教学培训经验总结,准确把握学习脉搏,深入分析重点难点。
(2)使用Eclipse Maven进行项目开发,与真实项目开发环境完美对接。
(3)全书200个实际案例(附赠源代码),全面分析了Spring的各项应用技术,读者可轻松掌握Spring开发的核心要领。
(4)详细讲解了Redis数据库的各项使用技术以及SpringDataRedis开发技术。
(5)详细讲解了JPA开发框架的各项开发技术,并且深入分析了SpringDataJPA技术的使用案例。
(6)Expression Language(EL)模块:表达式语言支持,支持访问和修改属性值,方法调用,支持访问及修改数组、容器和索引器、命名变量,支持算术和逻辑运算,支持从Spring容器获取Bean,也支持列表透明、选择和一般的列表聚合等。利用表达式语言,可以更加灵活地控制配置文件。
(7)提供了当前流行的高并发抢红包处理案例与SpringMVC Sp
|
內容簡介: |
《名师讲坛——Spring实战开发(Redis+SpringDataJPA+SpringMVC+SpringSecurity)》一共分为15章,核心的内容包括Spring框架结构、IOC&DI、AOP、Bean管理、资源管理、表达式语言和定时调度,同时整合了JMS消息服务、Web服务、Redis数据库、JDBC和JPA等服务组件,*后又讲解了流行的SpringMVC以及Spring提供的授权管理组件SpringSecurity。
|
關於作者: |
李兴华,著名软件技术讲师,系统架构师,有多年的软件教学经验,技术研究与讲解的主要方向为数据库、编程语言、Web开发、框架服务、系统架构、手机移动开发、大数据等。从2008年开始进行图书创作,出版过Oracle、Android、Java、Python、Web编程等10多本畅销书籍,总销量近50万册,受到广大读者的一致好评。
|
目錄:
|
目 录
第1章 Spring开发框架概述 1
1.1 Spring的产生背景 1
1.2 Spring简介 3
1.3 Spring架构图 4
1.4 本章小结 6
第2章 控制反转 7
2.1 IoC产生背景 7
2.2 搭建Spring开发环境 11
2.3 IoC开发实现 13
2.4 SpringTest测试 17
2.5 本章小结 18
第3章 Bean管理 20
3.1 Bean基本管理 20
3.2 使用p命名空间定义Bean 23
3.3 注入集合对象 24
3.3.1 注入数组对象 25
3.3.2 注入Set集合 27
3.3.3 注入Map集合 29
3.3.4 注入Properties集合 30
3.4 注入构造方法 31
3.5 自动匹配 33
3.6 Bean的实例化管理 35
3.7 Bean的初始化与销毁 38
3.8 基于Annotation配置管理 39
3.8.1 context扫描配置 40
3.8.2 资源扫描与注入 41
3.8.3 @Autowired注解 43
3.8.4 使用Java类进行配置 45
3.9 本章小结 45
第4章 Spring资源管理 47
4.1 Resource接口简介 47
4.2 读取不同资源 48
4.3 ResourceLoader接口 51
4.4 资源注入 53
4.5 注入资源数组 54
4.6 路径通配符 55
4.7 本章小结 56
第5章 Spring表达式语言 58
5.1 Spring表达式基本定义 58
5.2 表达式解析原理 60
5.3 自定义分隔符 61
5.4 基本表达式 62
5.4.1 字面表达式 63
5.4.2 数学表达式 63
5.4.3 关系表达式 64
5.4.4 逻辑表达式 64
5.4.5 三目运算操作 65
5.4.6 字符串处理表达式 66
5.4.7 正则匹配运算 67
5.5 Class表达式 68
5.6 表达式变量操作 70
5.7 集合表达式 73
5.8 Spring配置文件与SpEL 79
5.8.1 基于配置文件使用SpEL 79
5.8.2 基于Annotation使用SpEL 80
5.9 本章小结 82
第6章 定时调度 83
6.1 传统定时调度组件问题分析 83
6.2 QuartZ定时调度 84
6.2.1 继承QuartzJobBean类实现定时任务 85
6.2.2 使用CRON实现定时调度 86
6.2.3 基于Spring配置实现QuartZ调度 88
6.3 SpringTask任务调度 89
6.3.1 基于配置文件实现SpringTask任务调度处理 89
6.3.2 基于Annotation的SpringTask配置 90
6.3.3 SpringTask任务调度池 91
6.4 本章小结 91
第7章 AOP切面编程 92
7.1 AOP产生动机 92
7.2 AOP简介 95
7.3 AOP切入点表达式 97
7.4 AOP基础实现 98
7.5 前置通知参数接收 101
7.6 后置通知 101
7.7 环绕通知 103
7.8 基于Annotation的AOP配置 104
7.9 本章小结 106
第8章 Spring与JMS消息组件 107
8.1 JMS消息组件 107
8.2 配置ActiveMQ组件 109
8.3 使用ActiveMQ实现消息处理 111
8.3.1 处理Queue消息 112
8.3.2 处理Topic消息 115
8.3.3 基于Bean配置 116
8.4 本章小结 118
第9章 Spring与WebService 119
9.1 WebService简介 119
9.2 WebService基础开发 120
9.2.1 创建公共接口项目 120
9.2.2 创建WebService服务提供者 121
9.2.3 创建WebService服务消费者 122
9.3 Spring整合WebService 124
9.4 本章小结 126
第10章 Spring与Redis数据库 127
10.1 Redis简介 127
10.2 Redis安装与配置 128
10.3 Redis数据操作 130
10.3.1 string数据类型 130
10.3.2 hash数据类型 132
10.3.3 数字操作 133
10.3.4 list数据类型 135
10.3.5 set数据类型 138
10.3.6 zset(sorted set)数据类型 139
10.3.7 GEO数据类型 141
10.4 Redis高级配置 142
10.4.1 发布-订阅模式 142
10.4.2 事务处理 143
10.4.3 乐观锁 144
10.4.4 安全认证 144
10.4.5 Redis性能监控 145
10.5 Redis哨兵机制 147
10.5.1 Redis主从配置 148
10.5.2 哨兵机制 149
10.6 RedisCluster集群 150
10.7 使用Java操作Redis数据库 154
10.7.1 连接Redis数据库 154
10.7.2 Jedis数据操作 155
10.7.3 Jedis连接池 159
10.7.4 Jedis访问哨兵机制 159
10.7.5 使用Jedis访问RedisCluster 161
10.8 SpringDataRedis 163
10.8.1 SpringDataRedis数据操作 164
10.8.2 SpringDataRedis访问哨兵 166
10.8.3 SpringDataRedis访问RedisCluster 168
10.9 抢红包案例分析 169
10.10 本章小结 175
第11章 JDBC操作模板 176
11.1 JDBC操作模板简介 176
11.2 配置数据库连接 178
11.3 使用JDBC Template操作数据库 181
11.4 数据查询 186
11.5 Spring数据缓存 188
11.5.1 Spring缓存实现 192
11.5.2 @Cacheable注解 194
11.5.3 缓存更新策略 195
11.5.4 缓存清除 196
11.5.5 @CacheConfig缓存统一配置 198
11.5.6 多级缓存策略 199
11.5.7 整合EHCache缓存组件 200
11.5.8 整合Redis实现缓存管理 201
11.6 C3P0数据库连接池 204
11.7 本章小结 205
第12章 Spring事务管理 206
12.1 传统JDBC事务控制概述 206
12.2 Spring事务处理架构 207
12.3 事务传播属性 208
12.4 事务隔离级别 212
12.5 编程式事务控制 213
12.6 @Transactional事务控制注解 215
12.7 声明式事务控制 217
12.8 本章小结 218
第13章 SpringDataJPA 219
13.1 JPA简介 219
13.2 JPA编程起步 221
13.2.1 JPA基础实现 222
13.2.2 定义JPA连接工厂类 225
13.2.3 DDL自动更新 227
13.2.4 JPA常用注解 228
13.2.5 JPA主键生成策略 229
13.3 JPA数据操作 231
13.3.1 EntityManager数据操作 232
13.3.2 JPQL语句 234
13.3.3 Criteria查询 239
13.3.4 SQL原生查询 242
13.4 JPA数据缓存 244
13.4.1 一级缓存 244
13.4.2 JPA对象状态 246
13.4.3 二级缓存 248
13.4.4 查询缓存 250
13.5 JPA锁机制 251
13.5.1 悲观锁 252
13.5.2 乐观锁 252
13.6 JPA数据关联 254
13.6.1 一对一数据关联 254
13.6.2 一对多数据关联 257
13.6.3 多对多数据关联 261
13.7 Spring整合JPA开发框架 266
13.8 SpringDataJPA 270
13.8.1 Repository基本使用 271
13.8.2 Repository实现CRUD 273
13.8.3 Repository方法映射 277
13.8.4 CrudRepository数据接口 281
13.8.5 PagingAndSortingRepository数据接口 283
13.8.6 JpaRepository数据接口 285
13.9 本章小结 286
第14章 SpringMVC 287
14.1 SpringMVC简介 287
14.2 搭建SpringMVC项目开发环境 288
14.3 编写第一个SpringMVC程序 291
14.4 接收请求参数 295
14.5 参数与对象转换 297
14.6 Restful展示风格 299
14.7 获取内置对象 301
14.8 Web资源安全访问 303
14.9 读取资源文件 304
14.10 文件上传 305
14.11 拦截器 309
14.11.1 定义基础拦截器 310
14.11.2 HandlerMethod类 311
14.11.3 使用拦截器实现服务端请求验证 313
14.12 Spring综合案例 327
14.12.1 搭建项目开发环境 329
14.12.2 商品信息增加页面 332
14.12.3 商品信息保存 334
14.12.4 商品信息列表 336
14.12.5 商品信息编辑页面 339
14.12.6 商品信息更新 341
14.12.7 商品信息删除 342
14.12.8 配置Druid数据源 345
14.13 本章小结 347
第15章 SpringSecurity 349
15.1 SpringSecurity简介 349
15.2 SpringSecurity编程起步 350
15.3 CSRF访问控制 356
15.4 扩展登录和注销功能 359
15.5 获取认证与授权信息 362
15.6 基于数据库实现用户登录 364
15.6.1 基于SpringSecurity标准认证 364
15.6.2 UserDetailsService 366
15.7 Session管理 369
15.8 RememberMe 370
15.9 过滤器 371
15.10 SpringSecurity注解 376
15.11 投票器 378
15.11.1 AccessDecisionVoter 379
15.11.2 RoleHierarchy 381
15.12 基于Bean配置 382
15.12.1 基础配置 383
15.12.2 深入配置 385
15.12.3 配置投票管理器 387
15.13 本章小结 389
|
內容試閱:
|
前 言
我们在用心做事,做最好的教育,写最好的原创图书。
很早以前,我就想写一本关于Spring开发框架的书。但由于日常教学与课程研发的工作量实在太大,这一想法迟迟未能得以实现。也许是机缘巧合,2018年我抽出了许多时间,把自己的课堂笔记进行了细致整理,顺便将我15年来使用Spring的心得与技术感悟写了下来,于是有了本书。全书写完的那一刻,有一种轻松的感觉。写完本书后,我将继续回到培训教学与课程研发的繁忙工作之中。
写书是一件造福后来者的事情,一本书的作者实际上担负着知识传承的作用。我希望跟所有学生分享我的技术心得,所以对于本书坚持了我一贯的做法全部是原创内容。我认为,中国缺少真正的本土原创好书,但不缺那种靠简单的抄袭或疯狂的复制 粘贴堆砌起来的书。
在我十多年的教学生涯之中,发现很多学生都在不断重复着这样一种尴尬和窘境:辛辛苦苦买来一本书,却发现书的内容质量不过关,缺少合理的知识结构体系,技术描述晦涩难懂,所以只看了几眼就扔到了角落里。这样不仅是对金钱的浪费,更是对纸张与环境的浪费及破坏。对于贫困家庭走出来的我而言,非常清楚地知道学习成本有多么高,所以我要写真正的原创图书,而非那些靠复制 粘贴拼凑字数的假书。这一原则陪伴我走过了十年的创作生涯。
Spring是一个庞大的开发框架,其庞大不仅体现在强大的Spring技术本身,更体现在它能整合各类服务组件这一重任上。这就需要从业者掌握大量的开发技术,而这也正是本书创作的难点所在。为了方便读者学习,我在讲解Spring技术时还讲解了一些第三方技术,如ActiveMQ消息组件、Redis数据库、JPA开发框架、WebService技术、缓存技术等,并讲解了这些技术与Spring开发框架的整合。这样做的主要目的,是为了给读者一个可以直接使用的开发技术架构,读者理解起来会更容易,后期上手项目开发也会更轻松。
本书特色
(1)15年Spring开发与教学培训经验总结,准确把握学习脉搏,深入分析重点难点。
(2)使用Eclipse Maven进行项目开发,与真实项目开发环境完美对接。
(3)全书200个实际案例(附赠源代码),全面分析了Spring的各项应用技术,读者可轻松掌握Spring开发的核心要领。
(4)详细讲解了Redis数据库的各项使用技术以及SpringDataRedis开发技术。
(5)详细讲解了JPA开发框架的各项开发技术,并且深入分析了SpringDataJPA技术的使用案例。
(6)Expression Language(EL)模块:表达式语言支持,支持访问和修改属性值,方法调用,支持访问及修改数组、容器和索引器、命名变量,支持算术和逻辑运算,支持从Spring容器获取Bean,也支持列表透明、选择和一般的列表聚合等。利用表达式语言,可以更加灵活地控制配置文件。
(7)提供了当前流行的高并发抢红包处理案例与SpringMVC SpringDataJPA整合案例。
本书章节安排
第1章 Spring开发框架概述。作为起始章,本章为读者分析了传统Java EE开发架构的设计组成与弊端,并介绍了Spring开发框架的组成。
第2章 控制反转。本章通过几段具体程序,分析了Spring的设计理念和控制反转技术的使用,并结合Junit讲解了SpringTest的使用。
第3章 Bean管理。本章主要讲解了Spring开发框架提供的Bean配置,分析了各种数据类型的配置以及Spring中提供的Bean管理机制。
第4章 Spring资源管理。本章主要讲解了Spring提供的资源处理标准,利用它可实现各种资源文件的读取;同时介绍了如何结合配置文件并利用表达式实现资源定位。
第5章 Spring表达式语言。Spring中,最强大的部分就是字符串支持能力。本章详细分析了Spring表达式的执行流程以及各种操作语法,并结合Spring配置文件,通过实例说明了SpEL语言的应用。
第6章 定时调度。定时调度可以实现业务的自动处理,本章为读者讲解了QuartZ与SpringTask两个定时调度组件的配置与使用。
第7章 AOP切面编程。AOP是Spring中重要的技术组成,本章主要讲解了AOP的主要概念,以及如何在Spring中利用配置文件或Annotation注解实现AOP编程控制。
第8章 Spring与JMS消息组件。本章结合ActiveMQ组件,为读者讲解了Spring与JMS整合开发。
第9章 Spring与WebService。本章主要讲解了WebService的作用以及Spring实现处理,并结合CXF框架实现了WebService开发。
第10章 Spring与Redis数据库。本章主要讲解了如何在Linux下实现Redis数据库的安装与配置,分析了Redis中各个数据类型的使用、主从配置、哨兵机制、RedisCluster相关技术,并通过实际代码演示了Spring与Redis集成,最后通过一个实际的抢红包案例分析了Redis的操作特点。
第11章 JDBC操作模板。本章主要讲解了Spring提供的JDBC Template的配置与使用,分析了SpringCache相关技术的使用,以及如何与EHCache或Redis结合实现缓存管理。
第12章 Spring事务管理。本章为读者分析了Spring提供的事务处理架构,并讲解了基于AOP实现的事务管理。
第13章 SpringDataJPA。本章主要讲解了JPA开发框架的使用、Query查询、缓存配置、数据关联等相关技术,同时讲解了如何利用SpringDataJPA实现数据层开发。
第14章 SpringMVC。本章主要讲解了SpringMVC的处理架构及各项实现技术,最后通过一个完整案例讲解了SpringMVC SpringDataJPA的联合开发应用。
第15章 SpringSecurity。本章主要讲解了Spring中提供的认证与授权检测框架的配置与使用,结合SpringMVC实现了登录认证、授权检测、CSRF访问控制、Session管理和RememberMe操作实现。
寄语读者
本书全篇由笔者根据实践项目与教学经验总结而来,虽经过再三斟酌和审校,仍难免存在技术理解上的偏差和解释不到位的地方,欢迎读者批评指正。您的宝贵建议将帮助我们修正此书,大家一起努力,将传道、授业、解惑贯彻到底。
本书用到的程序源代码,读者可扫描图书封底的文泉云盘二维码获取其下载方式,也可登录清华大学出版社网站进行下载。技术学习部分,读者可登录魔乐科技官网及沐言优拓官网进行学习,也可登录笔者的新浪微博进行留言交流。
最后,希望本书成为您的良师益友。祝您读书快乐!
|
|