java抢票软件开发原理-大麦网抢票软件原理
内容简介:
随着移动互联网的兴起,以Java技术为后台的互联网技术占据了市场的主导地位,而在Java互联网后台开发中,SSM框架(Spring+Spring MVC+MyBatis)成为了主要架构,本书以此为焦点从入门到实际工作要求讲述了SSM框架的技术应用;与此同时,为了提高系统性能java抢票软件开发原理,NoSQL(尤其是Redis)在互联网系统中已经广泛使用,为了适应这个变化,本书通过Spring讲解了有关Redis的技术应用,这样更加贴近实际学习和工作的需要。
本书主要分为6个部分,第1部分对Java互联网的框架和主要涉及的模式做初步简介;第2部分讲述MyBatis技术;第3部分讲述Spring基础(包括IoC、AOP和数据库应用),重点讲解Spring数据库事务应用,以满足互联网企业的应用要求;第4部分,讲述Spring MVC框架;第5部分,通过Spring技术的应用,讲解Redis技术;第6部分,讲解SSM+Redis实践应用,通过互联网高并发如抢票、抢红包等场景,使用全注解的方式讲解SSM框架的整合,以及高并发与锁的应用和系统性能优化。
本书结合企业的实际需求,从原理到实践全面讲解SSM+Redis技术应用,无论你是Java程序员、SSM应用和研究人员,还是Redis应用人员、互联网开发人员,都可以从本书中收获知识。
作者简介:
杨开振,拥有十余年一线Java开发工作经验,热衷于Java互联网技术方向研究,目前从事Java互联网技术在线教育,著有畅销书《深入浅出MyBatis技术原理与实战》。
周吉文,高级工程师,曾获广东省科技进步一等奖,曾任国家“863”计划项目软件组组长java抢票软件开发原理,担任珠海市第二人民医院信息部主任多年,有丰富的项目实施和管理经验。
梁华辉,资深Java开发专家,有丰富的企业级应用及Web项目的开发经验。对软件设计模式和代码整洁方面有深入理解,对Spring、Hibernate等主流开源框架有深入研究。
谭茂华,资深Java开发专家,拥有十余年供应链管理、金融、物联网等行业大型系统软件开发经验。热衷于软件架构、软件研发过程控制、Java开源技术(尤其是Spring体系技术)的研究。
目录:
第1部分 入门和技术基础
第1章 认识SSM框架和Redis 2
1.1 Spring框架 2
1.2 MyBatis简介 6
1.3 Spring MVC简介 11
1.4 最流行的NoSQL——Redis 12
1.5 SSM+Redis结构框图及概述 13
第2章 Java设计模式 15
2.1 Java反射技术 15
2.2 动态代理模式和责任链模式 19
2.3 观察者(Observer)模式 30
2.4 工厂模式和抽象工厂模式 35
2.5 建造者(Builder)模式 38
2.6 总结 41
第2部分 互联网持久框架——MyBatis
第3章 认识MyBatis核心组件 44
3.1 持久层的概念和MyBatis的特点 44
3.2 准备MyBatis环境 45
3.3 MyBatis的核心组件 46
3.4 SqlSessionFactory(工厂接口) 47
3.5 SqlSession 50
3.6 映射器 51
3.7 生命周期 55
3.8 实例 57
第4章 MyBatis配置 63
4.1 概述 63
4.2 properties属性 64
4.3 settings设置 66
4.4 typeAliases别名 69
4.5 typeHandler类型转换器 72
4.6 ObjectFactory(对象工厂) 87
4.7 插件 89
4.8 environments(运行环境) 89
4.9 databaseIdProvider数据库厂商标识 95
4.10 引入映射器的方法 99
第5章 映射器 102
5.1 概述 102
5.2 select元素——查询语句 103
5.3 insert元素——插入语句 112
5.4 update元素和delete元素 114
5.5 sql元素 115
5.6 参数 116
5.7 resultMap元素 118
5.8 级联 120
5.9 缓存 143
5.10 存储过程 149
第6章 动态SQL 155
6.1 概述 155
6.2 if元素 156
6.3 choose、when、otherwise元素 156
6.4 trim、where、set元素 157
6.5 foreach元素 159
6.6 用test的属性判断字符串 159
6.7 bind元素 160
第7章 MyBatis的解析和运行原理 162
7.1 构建SqlSessionFactory过程 163
7.2 SqlSession运行过程 168
第8章 插件 181
8.1 插件接口 181
8.2 插件的初始化 182
8.3 插件的代理和反射设计 183
8.4 常用的工具类——MetaObject 186
8.5 插件开发过程和实例 187
8.6 总结 205
第3部分 Spring基础
第9章 Spring IoC的概念 208
9.1 Spring的概述 208
9.2 Spring IoC概述 210
9.3 Spring IoC容器 215
9.4 小结 223
第10章 装配Spring Bean 224
10.1 依赖注入的3种方式 224
10.2 装配Bean概述 227
10.3 通过XML配置装配Bean 228
10.4 通过注解装配Bean 235
10.5 装配的混合使用 246
10.6 使用Profile 249
10.7 加载属性(properties)文件 254
10.8 条件化装配Bean 258
10.9 Bean的作用域 259
10.10 使用Spring表达式(Spring EL) 261
第11章 面向切面编程 267
11.1 一个简单的约定游戏 267
11.2 Spring AOP的基本概念 274
11.3 使用@AspectJ注解开发Spring AOP 280
11.4 使用XML配置开发Spring AOP 293
11.5 经典Spring AOP应用程序 299
11.6 多个切面 301
11.7 小结 306
第12章 Spring和数据库编程 307
12.1 传统的JDBC代码的弊端 307
12.2 配置数据库资源 309
12.3 JDBC代码失控的解决方案——jdbcTemplate 311
12.4 MyBatis-Spring项目 317
第13章 深入Spring数据库事务管理 330
13.1 Spring数据库事务管理器的设计 331
13.2 编程式事务 336