目录
第一阶段SSM框架整合开发
第1章Spring
1.1Spring概述2
1.1.1Spring的由来2
1.1.2Spring的体系结构2
1.2Spring开发环境的构建4
1.2.1配置IntelliJ IDEA的Web服务器4
1.2.2Spring的下载及目录结构6
1.2.3第一个Spring入门程序6
1.3Spring IoC9
1.3.1Spring IoC的基本概念9
1.3.2Spring的常用注解10
1.3.3基于注解的依赖注入11
1.4Spring AOP13
1.4.1Spring AOP的基本概念13
1.4.2基于注解开发AspectJ15
1.5Spring Bean19
1.5.1Bean的实例化19
1.5.2Bean的作用域21
1.5.3Bean的初始化和销毁22
1.6Spring的数据库编程24
1.6.1Spring JDBC的XML配置24
1.6.2Spring JdbcTemplate的常用方法24
1.6.3基于@Transactional注解的声明式事务管理28
1.6.4如何在事务处理中捕获异常30
本章小结31
习题131第2章Spring MVC
2.1Spring MVC的工作原理32
2.2Spring MVC的工作环境33
2.2.1Spring MVC所需要的JAR包33
2.2.2使用IntelliJ IDEA开发Spring MVC应用34
2.3基于注解的控制器39
2.3.1Controller注解类型39
2.3.2RequestMapping注解类型39
2.3.3编写请求处理方法40
2.3.4Controller接收请求参数的常见方式41
2.3.5重定向与转发46
2.3.6应用@Autowired进行依赖注入47
2.3.7@ModelAttribute49
2.4表单标签库与数据绑定50
2.4.1表单标签库50
2.4.2数据绑定53
2.5拦截器58
2.5.1拦截器的定义58
2.5.2拦截器的配置59
2.5.3拦截器的执行流程60
2.6文件的上传63
本章小结67
习题267
〖1〗目录〖1〗〖2〗
第3章MyBatis
3.1MyBatis简介68
3.2MyBatis的环境构建68
3.3MyBatis的工作原理69
3.4MyBatis的核心配置70
3.5使用IntelliJ IDEA开发MyBatis入门程序71
3.6SSM框架整合开发75
3.6.1相关JAR包75
3.6.2MapperScannerConfigurer方式75
3.6.3整合示例76
3.6.4SqlSessionDaoSupport方式81
3.7使用MyBatis Generator插件自动生成映射文件85
3.8映射器概述86
3.9<select>元素87
3.9.1使用Map接口传递参数88
3.9.2使用Java Bean传递参数90
3.9.3使用@Param注解传递参数91
3.9.4<resultMap>元素92
3.9.5使用POJO存储结果集92
3.9.6使用Map存储结果集93
3.10<insert>、<update>、<delete>以及<sql>元素94
3.10.1<insert>元素94
3.10.2<update>与<delete>元素96
3.10.3<sql>元素96
3.11级联查询97
3.11.1一对一级联查询97
3.11.2一对多级联查询100
3.11.3多对多级联查询103
3.12动态SQL106
3.12.1<if>元素106
3.12.2<choose>、<when>、<otherwise>元素107
3.12.3<trim>元素108
3.12.4<where>元素109
3.12.5<set>元素110
3.12.6<foreach>元素111
3.12.7<bind>元素112
3.13MyBatis的缓存机制113
3.13.1一级缓存(SqlSession级别的缓存)113
3.13.2二级缓存(Mapper级别的缓存)114
本章小结116
习题3116
第4章名片管理系统的设计与实现(SSM+JSP)
4.1系统设计117
4.1.1系统功能需求117
4.1.2系统模块划分117
4.2数据库设计118
4.2.1数据库概念结构设计118
4.2.2数据库逻辑结构设计118
4.3系统管理119
4.3.1所需JAR包119
4.3.2JSP页面管理119
4.3.3包管理119
4.3.4配置管理120
4.4组件设计120
4.4.1工具类120
4.4.2统一异常处理120
4.4.3验证码121
4.5名片管理121
4.5.1领域模型与持久化实体类121
4.5.2Controller实现121
4.5.3Service实现123
4.5.4Dao实现125
4.5.5SQL映射文件125
4.5.6添加名片126
4.5.7名片管理主页面127
4.5.8修改名片127
4.5.9删除名片128
4.6用户相关128
4.6.1领域模型与持久化实体类128
4.6.2Controller实现128
4.6.3Service实现129
4.6.4Dao实现130
4.6.5SQL映射文件130
4.6.6注册130
4.6.7登录131
4.6.8修改密码131
4.6.9安全退出131
本章小结131
习题4131
第二阶段Spring Boot框架开发
第5章Spring Boot入门
5.1Spring Boot概述134
5.1.1什么是Spring Boot134
5.1.2Spring Boot的优点134
5.1.3Spring Boot的主要特性134
5.2第一个Spring Boot应用135
5.2.1Maven简介135
5.2.2Maven的pom.xml135
5.2.3使用IntelliJ IDEA快速构建Spring Boot应用136
本章小结139
习题5139
第6章Spring Boot核心
6.1Spring Boot的基本配置140
6.1.1启动类和核心注解@SpringBootApplication140
6.1.2Spring Boot的全局配置文件141
6.1.3Spring Boot的Starters141
6.2读取应用配置142
6.2.1Environment142
6.2.2@Value143
6.2.3@ConfigurationProperties143
6.2.4@PropertySource144
6.3日志配置145
6.4Spring Boot的自动配置原理147
6.5Spring Boot的条件注解148
6.5.1条件注解149
6.5.2自定义条件149
6.5.3自定义Starters151
本章小结155
习题6155
第7章Spring Boot的Web开发
7.1Spring Boot的Web开发支持157
7.2Thymeleaf模板引擎157
7.2.1Spring Boot的Thymeleaf支持158
7.2.2Thymeleaf基础语法159
7.2.3Thymeleaf的常用属性161
7.2.4用Spring Boot与Thymeleaf实现页面信息的国际化165
7.2.5Spring Boot与Thymeleaf的表单验证168
7.2.6基于Thymeleaf与BootStrap的Web开发实例171
7.3用Spring Boot处理JSON数据174
7.3.1JSON数据结构174
7.3.2JSON数据转换175
7.4Spring Boot文件的上传与下载178
7.5Spring Boot的异常统一处理182
7.5.1自定义error页面183
7.5.2@ExceptionHandler注解185
7.5.3@ControllerAdvice注解186
7.6Spring Boot对JSP的支持187
本章小结190
习题7190
第8章Spring Boot的数据访问
8.1Spring Data JPA191
8.1.1Spring Boot的支持192
8.1.2简单条件查询192
8.1.3关联查询199
8.1.4@Query和@Modifying注解213
8.1.5排序与分页查询214
8.2REST217
8.2.1REST简介217
8.2.2Spring Boot整合REST219
8.2.3Spring Data REST220
8.2.4REST服务测试221
8.3MongoDB225
8.3.1安装MongoDB226
8.3.2Spring Boot整合MongoDB226
8.3.3增、删、改、查227
8.4Redis230
8.4.1安装Redis230
8.4.2Spring Boot整合Redis232
8.4.3使用StringRedisTemplate和RedisTemplate233
8.5数据缓存Cache236
8.5.1Spring缓存支持236
8.5.2Spring Boot缓存支持238
8.5.3使用Redis Cache241
8.6Spring Boot整合MyBatis242
本章小结245
习题8245
第9章
电子商务平台的设计与实现
(Spring Boot+MyBatis+Thymeleaf)
9.1系统设计246
9.1.1系统功能需求246
9.1.2系统模块划分246
9.2数据库设计247
9.2.1数据库概念结构设计247
9.2.2数据逻辑结构设计248
9.2.3创建数据表250
9.3系统管理250
9.3.1添加相关依赖250
9.3.2HTML页面及静态资源管理250
9.3.3应用的包结构251
9.3.4配置文件252
9.4组件设计252
9.4.1管理员登录权限验证252
9.4.2前台用户登录权限验证253
9.4.3验证码253
9.4.4统一异常处理253
9.4.5工具类254
9.5后台管理子系统的实现254
9.5.1管理员登录254
9.5.2类型管理255
9.5.3添加商品258
9.5.4查询商品260
9.5.5修改商品262
9.5.6删除商品263
9.5.7查询订单263
9.5.8用户管理264
9.5.9按月统计265
9.5.10按类型统计266
9.5.11安全退出267
9.6前台电子商务子系统的实现268
9.6.1导航栏及首页搜索268
9.6.2推荐商品及最新商品269
9.6.3用户注册271
9.6.4用户登录272
9.6.5商品详情273
9.6.6收藏商品274
9.6.7购物车275
9.6.8下单277
9.6.9个人信息279
9.6.10我的收藏280
9.6.11我的订单281
本章小结282
习题9282
第10章Spring Boot的安全控制
10.1Spring Security快速入门283
10.1.1什么是Spring Security283
10.1.2Spring Security的用户认证283
10.1.3Spring Security的请求授权284
10.1.4Spring Security的核心类285
10.1.5Spring Security的验证机制287
10.2Spring Boot的支持287
10.3实际开发中的Spring Security操作实例287
本章小结296
习题10296
第11章Spring Boot的异步消息
11.1消息模型297
11.1.1点对点式297
11.1.2发布/订阅式297
11.2企业级消息代理297
11.2.1JMS297
11.2.2AMQP299
11.3Spring Boot的支持301
11.3.1JMS的自动配置301
11.3.2AMQP的自动配置301
11.4异步消息通信实例301
11.4.1JMS实例301
11.4.2AMQP实例305
本章小结309
习题11309
第三阶段Vue.js 3前端框架开发
第12章Vue.js基础
12.1网站交互方式312
12.1.1多页应用程序312
12.1.2单页应用程序313
12.2MVVM模式314
12.3Vue.js是什么314
12.4安装Vue.js315
12.4.1本地独立版本方法315
12.4.2CDN方法315
12.4.3NPM方法315
12.4.4命令行工具(CLI)方法315
12.5第一个Vue.js程序315
12.5.1安装Visual Studio Code及其插件315
12.5.2创建第一个Vue.js应用316
12.5.3声明式渲染317
12.5.4Vue.js的生命周期319
12.6插值与表达式320
12.6.1文本插值320
12.6.2原始HTML插值321
12.6.3JavaScript表达式321
12.7计算属性和监听器321
12.7.1计算属性computed321
12.7.2监听器属性watch324
12.8内置指令325
12.8.1vbind指令325
12.8.2条件渲染指令vif和vshow326
12.8.3列表渲染指令vfor328
12.8.4事件处理329
12.8.5表单与vmodel330
12.8.6实战: 购物车实例333
12.9组件335
12.9.1组件的注册335
12.9.2使用props传递数据337
12.9.3组件的通信339
12.9.4动态组件与异步组件344
12.9.5实战: 正整数数字输入框组件345
12.10自定义指令347
12.10.1自定义指令的注册347
12.10.2实战: 实时时间转换指令348
12.11响应性350
12.11.1什么是响应性350
12.11.2响应性原理351
12.12setup组件选项351
12.12.1setup函数的参数351
12.12.2setup函数的返回值353
12.12.3使用ref创建响应式引用354
12.12.4在setup内部调用生命周期钩子函数355
本章小结355
习题12355
第13章Vue.js进阶
13.1单文件组件与webpack359
13.2安装Node.js和NPM360
13.2.1安装Node.js360
13.2.2NPM的常用命令360
13.3Vue Router363
13.3.1Vue Router的安装363
13.3.2Vue Router的基本用法367
13.3.3Vue Router的高级应用371
13.3.4路由钩子函数383
13.3.5路由元信息386
13.3.6登录权限验证实例387
13.4setup语法糖390
13.4.1属性与方法的绑定390
13.4.2路由391
13.4.3组件传值393
13.5Element Plus UI组件库395
13.5.1Element Plus的安装395
13.5.2Element Plus组件的介绍396
13.5.3Element Plus组件的应用396
13.5.4按需引入Element Plus398
本章小结400
习题13400
第14章MyBatisPlus
14.1MyBatisPlus简介401
14.2Spring Boot整合MyBatisPlus401
14.3MyBatisPlus注解404
14.4CRUD接口407
14.5条件构造器413
本章小结418
习题14418第15章Spring Boot单元测试
15.1JUnit 5419
15.1.1JUnit 5简介419
15.1.2JUnit 5注解419
15.1.3JUnit 5断言421
15.2单元测试用例422
15.2.1测试环境的构建422
15.2.2测试Mapper接口424
15.2.3测试Service层425
15.3使用Postman测试Controller层426
本章小结429
习题15429
第16章
电子商务平台的设计与实现
(Spring Boot+Vue.js 3+MyBatisPlus)
16.1使用IntelliJ IDEA构建后端系统430
16.1.1创建Spring Boot Web应用430
16.1.2修改pom.xml430
16.1.3配置数据源等信息431
16.1.4创建持久化实体类431
16.1.5创建Mapper接口431
16.1.6创建业务层433
16.1.7创建控制器层441
16.1.8创建跨域响应头设置过滤器445
16.1.9创建工具类445
16.1.10MyBatisPlus分页插件、Redis以及Token签名配置446
16.2使用Vue CLI构建前端系统446
16.2.1使用Vue CLI构建前端项目ebusinessvue446
16.2.2安装Element Plus和@elementplus/iconsvue446
16.2.3安装ECharts447
16.2.4安装Axios模块并设置跨域访问447
16.2.5管理员登录组件447
16.2.6后台管理主界面组件449
16.2.7商品类型管理组件450
16.2.8商品管理组件450
16.2.9订单管理组件450
16.2.10销量统计(按月)组件453
16.2.11订单统计(按类型)组件455
16.2.12前端首页组件457
16.2.13用户注册组件459
16.2.14用户登录组件459
16.2.15个人信息组件459
16.2.16商品详情组件460
16.2.17我的购物车组件463
16.2.18我的订单组件466
16.2.19我的收藏组件466
16.2.20订单确认组件466
16.2.21配置路由467
16.3测试运行469
本章小结469
习题16469