软件项目开发全程实录 Java Web项目开发全程实录
作者: 明日科技编著
出版时间: 2019年版
丛编项: 软件项目开发全程实录
内容简介
《Java Web项目开发全程实录》以ITCLUB博客、甜橙音乐网、程序源论坛、52同城信息网、物流配货系统、明日知道、九宫格记忆网、图书馆管理系统、网络在线考试系统和天下淘商城10个实际项目开发程序为案例,从软件工程的角度出发,按照项目的开发顺序,系统、全面地介绍了程序开发流程。从开发背景、需求分析、系统功能分析、数据库分析、数据库建模、网站开发到网站的发布,每个过程都做了详细的介绍。
目录
第1章 ITCLUB博客(Servlet SQL Server 2014 jQuery实现) 1
视频讲解:1小时47分钟
1.1 开发背景 2
1.2 系统设计 2
1.2.1 系统功能设计 2
1.2.2 系统业务流程 3
1.2.3 系统开发环境 3
1.2.4 系统预览 8
1.3 数据库设计 9
1.3.1 数据库设计概述 9
1.3.2 创建数据库 10
1.3.3 创建数据表 11
1.3.4 其他数据表结构 14
1.4 开发准备 16
1.4.1 在Eclipse中创建Web服务器 16
1.4.2 创建项目 19
1.4.3 创建JSP文件 22
1.4.4 实现“网站正在建设中”页面 26
1.4.5 创建项目目录结构 29
1.5 博客首页模块的设计 32
1.5.1 首页模块概述 32
1.5.2 设计首页页面 33
1.5.3 实现“精选博文”功能 34
1.5.4 实现“最新博文”功能 42
1.5.5 实现“博客排行榜”功能 46
1.6 登录注册 49
1.6.1 登录注册模块概述 49
1.6.2 实现“算数验证码”的功能 50
1.6.3 实现Ajax提交表单数据的功能 54
1.7 博客文章模块的设计 57
1.7.1 博客文章模块概述 57
1.7.2 设计博客文章页面 58
1.7.3 实现“获取博主头像”的功能 59
1.7.4 实现“统计文章与评论总数”的功能 63
1.7.5 实现“获取文章列表”的功能 65
1.8 本章小结 69
第2章 甜橙音乐网(JSP SQL Server 2014 jQuery jPlayer实现) 70
视频讲解:1小时39分钟
2.1 开发背景 71
2.2 系统设计 71
2.2.1 系统功能结构 71
2.2.2 系统流程 71
2.2.3 系统开发环境 72
2.2.4 系统预览 72
2.3 数据库设计 73
2.3.1 数据库设计概述 73
2.3.2 创建数据库和数据表 74
2.3.3 数据表结构说明 74
2.4 网站首页模块的设计 76
2.4.1 首页模块概述 76
2.4.2 设计首页页面 76
2.4.3 实现“热门歌手列表”功能 77
2.4.4 实现“热门歌曲列表”功能 80
2.4.5 实现“音乐播放”功能 83
2.5 排行榜模块的设计 84
2.5.1 排行榜模块概述 84
2.5.2 设计排行榜页面 84
2.5.3 实现歌曲“排行榜”的功能 85
2.6 曲风模块的设计 88
2.6.1 曲风模块概述 88
2.6.2 设计曲风模块页面 89
2.6.3 实现曲风模块数据的获取 90
2.6.4 实现曲风模块页面的渲染 91
2.6.5 实现“曲风列表”的分页功能 93
2.7 发现音乐模块的设计 95
2.7.1 发现音乐模块概述 95
2.7.2 设计发现音乐页面 95
2.7.3 实现发现音乐的搜索功能 96
2.8 歌手模块的设计 99
2.8.1 歌手模块概述 99
2.8.2 设计歌手列表页面 100
2.8.3 实现歌手列表的功能 101
2.8.4 设计歌手详情页面 105
2.8.5 实现歌手详情的功能 106
2.9 本章小结 109
第3章 程序源论坛(Spring MVC MyBatis Shiro UEditor MySQL实现) 110
视频讲解:2小时18分钟
3.1 开发背景 111
3.2 系统功能设置 111
3.2.1 系统功能结构 111
3.2.2 系统业务流程 111
3.2.3 系统开发环境 112
3.2.4 系统预览 112
3.3 开发准备 114
3.3.1 了解Java Web目录结构 114
3.3.2 创建项目 115
3.3.3 前期项目准备 116
3.3.4 修改字符集 118
3.3.5 构建项目 119
3.4 富文本UEditor 126
3.4.1 富文本UEditor概述 126
3.4.2 使用UEditor 134
3.4.3 展示UEditor 136
3.5 数据库设计 138
3.5.1 数据与逻辑 138
3.5.2 创建数据库表 139
3.6 页面功能设计 140
3.6.1 设计页面效果 140
3.6.2 发表帖子页面 140
3.6.3 展示帖子页面 142
3.6.4 添加分页原型 143
3.6.5 查看页面原型 144
3.7 帖子保存与展示 145
3.7.1 接收帖子参数 145
3.7.2 处理帖子参数 146
3.7.3 保存帖子附加信息 150
3.7.4 分页查询帖子 151
3.7.5 使用JSTL迭代数据 154
3.7.6 查看帖子的详细内容 157
3.8 帖子的关系链 163
3.8.1 维护关系链 163
3.8.2 保存跟帖 165
3.8.3 带参数的分页 167
3.9 实现登录注册 170
3.9.1 用户注册 170
3.9.2 用户登录 171
3.9.3 用户退出 173
3.10 配置文件 174
3.10.1 框架配置文件 174
3.10.2 UEditor富文本配置文件 174
3.11 本章小结 175
第4章 52同城信息网(Struts 2.5 SQL Server 2014实现) 176
视频讲解:2小时9分钟
4.1 开发背景 177
4.2 系统分析 177
4.2.1 需求分析 177
4.2.2 可行性分析 177
4.2.3 编写项目计划书 178
4.3 系统设计 180
4.3.1 系统目标 180
4.3.2 系统功能结构 180
4.3.3 系统流程 181
4.3.4 系统预览 181
4.3.5 构建开发环境 182
4.3.6 文件夹组织结构 183
4.3.7 编码规则 184
4.4 数据库设计 185
4.4.1 数据库分析 186
4.4.2 数据库概念设计 186
4.4.3 数据库逻辑结构 187
4.5 公共类设计 188
4.5.1 数据库连接及操作类 189
4.5.2 业务处理类 191
4.5.3 分页类 195
4.5.4 字符串处理类 197
4.6 前台页面设计 198
4.6.1 前台页面概述 198
4.6.2 前台页面技术分析 198
4.6.3 前台页面的实现过程 199
4.7 前台信息显示设计 200
4.7.1 信息显示概述 200
4.7.2 信息显示技术分析 201
4.7.3 列表显示信息的实现过程 203
4.7.4 显示信息详细内容的实现过程 213
4.8 信息发布模块设计 215
4.8.1 信息发布模块概述 215
4.8.2 信息发布模块技术分析 216
4.8.3 信息发布模块的实现过程 220
4.8.4 单元测试 223
4.9 后台登录设计 227
4.9.1 后台登录功能概述 227
4.9.2 后台登录技术分析 228
4.9.3 后台登录的实现过程 228
4.10 后台页面设计 230
4.10.1 后台页面概述 230
4.10.2 后台页面技术分析 231
4.10.3 后台页面的实现过程 232
4.11 后台信息管理设计 232
4.11.1 信息管理功能概述 232
4.11.2 信息管理技术分析 235
4.11.3 后台信息显示的实现过程 236
4.11.4 信息审核的实现过程 241
4.11.5 信息付费设置的实现过程 244
4.12 网站发布 246
4.13 开发技巧与难点分析 247
4.13.1 实现页面中的超链接 247
4.13.2 Struts 2.5中的中文乱码问题 248
4.14 Struts 2.5框架搭建与介绍 248
4.14.1 搭建Struts 2.5框架 248
4.14.2 Struts 2.5框架介绍 249
4.15 本章小结 253
第5章 物流配货系统 (Struts 2.5 MySQL实现) 254
视频讲解:1小时44分钟
5.1 开发背景 255
5.2 系统分析 255
5.2.1 需求分析 255
5.2.2 必要性分析 255
5.3 系统设计 255
5.3.1 系统目标 255
5.3.2 系统功能结构 256
5.3.3 系统开发环境 256
5.3.4 系统预览 257
5.3.5 系统文件夹架构 259
5.4 数据库设计 259
5.4.1 数据表概要说明 259
5.4.2 数据库逻辑设计 260
5.5 公共模块设计 261
5.5.1 编写数据库持久化类 261
5.5.2 编写获取系统时间操作类 263
5.5.3 编写分页Bean 263
5.5.4 请求页面中元素类的编写 266
5.5.5 编写重新定义的simple模板 266
5.6 管理员功能模块设计 268
5.6.1 管理员模块概述 268
5.6.2 管理员模块技术分析 269
5.6.3 管理员模块实现过程 270
5.7 车源管理模块设计 274
5.7.1 车源管理模块概述 274
5.7.2 车源管理技术分析 275
5.7.3 车源管理实现过程 276
5.8 发货单管理流程模块 281
5.8.1 发货单管理流程概述 281
5.8.2 发货单管理流程技术分析 281
5.8.3 发货单管理流程实现过程 283
5.9 开发技巧与难点分析 287
5.10 本章小结 287
第6章 明日知道(Struts 2.5 Spring 4 Hibernate 4 jQuery MySQL实现) 288
视频讲解:1小时45分钟
6.1 开发背景 289
6.2 系统分析 289
6.2.1 需求分析 289
6.2.2 可行性研究 289
6.3 系统设计 290
6.3.1 系统目标 290
6.3.2 系统功能结构 290
6.3.3 系统流程 290
6.3.4 开发环境 291
6.3.5 系统预览 291
6.3.6 文件夹组织结构 293
6.4 数据库设计 294
6.4.1 数据库概念结构分析 294
6.4.2 数据库逻辑结构设计 295
6.5 公共模块设计 297
6.5.1 Spring Hibernate组合下实现持久层 297
6.5.2 Struts 2.5标签实现分页 299
6.6 主页面设计 301
6.6.1 主页面概述 301
6.6.2 主页面技术分析 302
6.6.3 首页实现过程 302
6.6.4 社区首页实现过程 304
6.7 文章维护模块设计 305
6.7.1 文章维护模块概述 305
6.7.2 文章维护模块技术分析 305
6.7.3 添加文章实现过程 306
6.7.4 浏览文章实现过程 308
6.7.5 文章回复实现过程 309
6.7.6 修改文章实现过程 310
6.7.7 删除文章实现过程 311
6.8 文章搜索模块设计 312
6.8.1 文章搜索模块概述 312
6.8.2 文章搜索模块技术分析 313
6.8.3 搜索我的文章实现过程 313
6.8.4 根据关键字搜索文章实现过程 314
6.8.5 热门搜索实现过程 316
6.8.6 搜索文章作者的所有文章实现过程 317
6.8.7 搜索回复作者的所有文章实现过程 318
6.9 开发技巧与难点分析 319
6.9.1 实现文章回复的异步提交的问题 319
6.9.2 解决系统当前位置动态设置的问题 321
6.10 本章小结 324
第7章 九宫格记忆网(Java Web Ajax jQuery MySQL实现) 325
视频讲解:1小时17分钟
7.1 开发背景 326
7.2 需求分析 326
7.3 系统设计 326
7.3.1 系统目标 326
7.3.2 功能结构 326
7.3.3 系统流程 327
7.3.4 开发环境 327
7.3.5 系统预览 328
7.3.6 文件夹组织结构 331
7.4 数据库设计 331
7.4.1 数据库设计 331
7.4.2 数据表设计 332
7.5 公共模块设计 333
7.5.1 编写数据库连接及操作的类 333
7.5.2 编写保存分页代码的JavaBean 337
7.5.3 配置解决中文乱码的过滤器 339
7.5.4 编写实体类 341
7.6 主界面设计 341
7.6.1 主界面概述 341
7.6.2 主界面技术分析 342
7.6.3 主界面的实现过程 343
7.7 显示九宫格日记列表模块设计 344
7.7.1 显示九宫格日记列表概述 344
7.7.2 显示九宫格日记列表技术分析 344
7.7.3 查看日记原图 346
7.7.4 对日记图片进行左转和右转 347
7.7.5 显示全部九宫格日记的实现过程 350
7.7.6 我的日记的实现过程 354
7.8 写九宫格日记模块设计 355
7.8.1 写九宫格日记概述 355
7.8.2 写九宫格日记技术分析 356
7.8.3 填写日记信息的实现过程 357
7.8.4 预览生成的日记图片的实现过程 362
7.8.5 保存日记图片的实现过程 366
7.9 本章小结 368
第8章 图书馆管理系统(Java Web MySQL实现) 369
视频讲解:1小时41分钟
8.1 开发背景 370
8.2 需求分析 370
8.3 系统设计 370
8.3.1 系统目标 370
8.3.2 系统功能结构 371
8.3.3 系统流程 371
8.3.4 开发环境 372
8.3.5 系统预览 372
8.3.6 文件夹组织结构 373
8.4 数据库设计 373
8.4.1 数据库分析 373
8.4.2 数据库概念设计 373
8.4.3 数据库逻辑结构 375
8.5 公共模块设计 378
8.5.1 数据库连接及操作类的编写 379
8.5.2 字符串处理类的编写 382
8.5.3 配置解决中文乱码的过滤器 382
8.6 主界面设计 383
8.6.1 主界面概述 383
8.6.2 主界面技术分析 384
8.6.3 主界面的实现过程 385
8.7 管理员模块设计 386
8.7.1 管理员模块概述 386
8.7.2 管理员模块技术分析 386
8.7.3 系统登录的实现过程 388
8.7.4 查看管理员的实现过程 391
8.7.5 添加管理员的实现过程 395
8.7.6 设置管理员权限的实现过程 398
8.7.7 删除管理员的实现过程 402
8.7.8 单元测试 403
8.8 图书借还模块设计 405
8.8.1 图书借还模块概述 405
8.8.2 图书借还模块技术分析 405
8.8.3 图书借阅的实现过程 407
8.8.4 图书续借的实现过程 411
8.8.5 图书归还的实现过程 414
8.8.6 图书借阅查询的实现过程 416
8.8.7 单元测试 420
8.9 开发问题解析 421
8.9.1 如何自动计算图书归还日期 421
8.9.2 如何对图书借阅信息进行统计排行 422
8.10 本章小结 422
第9章 网络在线考试系统(Servlet WebSocket MySQL实现) 423
视频讲解:54分钟
9.1 开发背景 424
9.2 需求分析 424
9.3 系统设计 424
9.3.1 系统目标 424
9.3.2 功能结构 425
9.3.3 系统业务流程 425
9.3.4 开发环境 425
9.3.5 系统预览 426
9.3.6 文件夹组织结构 428
9.4 数据库设计 428
9.4.1 初始化数据库 428
9.4.2 数据库表结构 429
9.4.3 数据库表关系 431
9.5 考试计时模块设计 431
9.5.1 考试计时模块概述 431
9.5.2 考试计时模块技术分析 432
9.5.3 设计计时模块的界面 432
9.5.4 引用并设置WebSocket路径 434
9.5.5 编写计时模块的业务逻辑 435
9.5.6 启动计时线程 437
9.6 考试科目模块设计 439
9.6.1 考试科目模块概述 439
9.6.2 考试科目模块技术分析 441
9.6.3 获取并显示考试科目 442
9.6.4 获取并显示指定考试科目的所有试卷 444
9.6.5 获取并显示试题及答案 446
9.7 开发技巧 451
9.7.1 通过字符串ASCII码加密实现加密答案 451
9.7.2 科学的加密方式MD5 451
9.8 本章小结 452
第10章 天下淘商城(Struts 2.5 Spring Hibernate MySQL实现) 453
视频讲解:2小时3分钟
10.1 开发背景 454
10.2 需求分析 454
10.3 系统设计 454
10.3.1 功能结构 454
10.3.2 系统流程 455
10.3.3 开发环境 456
10.3.4 系统预览 456
10.3.5 文件夹组织结构 459
10.4 数据库设计 459
10.4.1 数据库概念设计 459
10.4.2 创建数据库及数据表 461
10.5 公共模块的设计 463
10.5.1 泛型工具类 463
10.5.2 数据持久化类 464
10.5.3 分页操作 465
10.5.4 实体映射 467
10.6 项目环境搭建 471
10.6.1 配置Struts 2.5 472
10.6.2 配置Hibernate 475
10.6.3 配置Spring 476
10.6.4 配置web.xml 477
10.7 前台商品信息查询模块设计 478
10.7.1 前台商品信息查询模块概述 478
10.7.2 前台商品信息查询模块技术分析 478
10.7.3 前台商品信息查询模块实现过程 479
10.8 购物车模块设计 481
10.8.1 购物车模块概述 481
10.8.2 购物车模块技术分析 482
10.8.3 购物车基本功能实现过程 482
10.8.4 订单相关功能实现过程 485
10.9 后台商品管理模块设计 488
10.9.1 后台商品管理模块概述 488
10.9.2 后台商品管理模块技术分析 488
10.9.3 商品管理功能实现过程 489
10.9.4 商品类别管理功能实现过程 493
10.10 开发技巧与难点分析 497
10.11 本章小结 498