本 书以蜀玉网络购物商城、博客网站等8个实际项目开发程序为案例,从软件工程的角度出发,按照项目的开发顺序,系统、全面地介绍了程序开发流程。本书案例涉 及行业广泛,实用性强。通过学习本书,读者可以了解各个行业的特点,能够针对某一行业进行网站开发或者桌面应用程序开发,也可以通过光盘中提供的案例源代 码和数据库进行二次开发,以节省开发系统所需要的时间。
本书配套光盘提供了书中所有案例的源代码,这些源代码都经过精心调试,在Windows XP、Windows 2000和Windows Server 2003操作系统下全部通过,保证能够正常运行。
目录如下:
第1章 蜀玉网络购物商城 1
1.1 概述 2
1.2 系统分析 2
1.2.1 需求分析 2
1.2.2 可行性分析 2
1.3 总体设计 3
1.3.1 项目规划 3
1.3.2 系统功能结构图 3
1.4 系统设计 4
1.4.1 设计目标 4
1.4.2 开发及运行环境 4
1.4.3 逻辑结构设计 5
1.5 技术准备 9
1.5.1 MVC概述 9
1.5.2 Struts概述 10
1.5.3 在MyEclipse中配置应用Struts结构文件 12
1.6 系统架构设计 13
1.6.1 系统文件夹架构图 13
1.6.2 文件架构设计 14
1.7 JavaBean的设计 15
1.7.1 数据库连接的JavaBean的编写 15
1.7.2 设置系统中使用的SQL语句的JavaBean 15
1.7.3 解决Struts中文乱码问题 16
1.7.4 检查用户是否已经在线的公共类 16
1.8 会员管理模块 18
1.8.1 会员登录 18
1.8.2 用户注册 21
1.8.3 找回密码 23
1.9 网站主页设计 25
1.9.1 网站首页面导航信息版块 26
1.9.2 网站首页面左部信息版块 27
1.9.3 网站首页面右部信息版块 27
1.9.4 网站首页面版权信息版块 28
1.10 会员资料修改模块 28
1.11 购物车模块 30
1.11.1 添加购物车 30
1.11.2 查看购物车 32
1.11.3 生成订单 34
1.11.4 清空购物车 35
1.12 商品销售排行模块 35
1.12.1 商品销售排行榜 36
1.12.2 分页显示特价商品 37
1.13 网站后台主要功能模块设计 39
1.13.1 网站后台首页设计 39
1.13.2 后台管理员身份验证模块 40
1.13.3 商品设置模块 41
1.13.4 订单设置模块 45
1.13.5 公告设置模块 46
1.14 退出模块 48
1.15 疑难问题分析 48
1.15.1 中文乱码问题的处理 48
1.15.2 关闭网站后session没有被注销 49
第2章 博客网站 50
2.1 概述 51
2.2 系统分析 51
2.2.1 需求分析 51
2.2.2 可行性分析 51
2.3 总体设计 51
2.3.1 项目规划 51
2.3.2 系统功能结构图 52
2.4 系统设计 52
2.4.1 设计目标 52
2.4.2 开发及运行环境 53
2.4.3 逻辑结构设计 53
2.5 技术准备 55
2.5.1 Hibernate框架概述 55
2.5.2 Hibernate配置文件 55
2.5.3 创建持久化类 56
2.5.4 Hibernate映射文件 57
2.6 系统构架设计 57
2.6.1 系统文件夹架构图 57
2.6.2 文件夹架构设计 58
2.7 公共类设计 58
2.7.1 获得当前系统时间类 58
2.7.2 字符处理类的编写 59
2.7.3 将字符串转化成字符数组类 60
2.7.4 Hibernate的初始化与Session管理类的编写 60
2.8 网站前台主要功能设计 61
2.8.1 网站首页页面设计 61
2.8.2 网站计数功能实现 62
2.8.3 网络日历功能 62
2.8.4 博主信息显示模块 64
2.8.5 浏览博主发表文章模块 66
2.8.6 添加评论模块 70
2.9 网站后台主要功能模块设计 72
2.9.1 后台首页设计 74
2.9.2 博客文章管理模块 74
2.9.3 个人相片设置模块 83
2.9.4 博主设置模块 89
2.10 疑难问题分析 91
2.10.1 Hibernate的映射类型 91
2.10.2 如何使用Hibernate声明事务边界 92
2.11 程序调试与错误处理 92
第3章 图书馆管理系统 94
3.1 概述 95
3.2 系统分析 95
3.2.1 需求分析 95
3.2.2 可行性分析 95
3.3 总体设计 95
3.3.1 项目规划 95
3.3.2 系统功能结构图 96
3.4 系统设计 96
3.4.1 设计目标 96
3.4.2 开发及运行环境 97
3.4.3 逻辑结构设计 97
3.5 技术准备 101
3.5.1 利用MySQL创建、删除数据库及数据表 101
3.5.2 查看、修改数据表结构及重命名数据表 102
3.6 系统总体架构 103
3.6.1 文件夹架构 103
3.6.2 文件架构 103
3.6.3 网站首页架构 104
3.7 配置Struts 105
3.8 工具类的编写 106
3.8.1 数据库连接及操作类的编写 106
3.8.2 字符串处理类的编写 109
3.9 管理员功能模块 110
3.9.1 管理员功能模块总体架构 110
3.9.2 定义管理员的ActionForm实现类 110
3.9.3 创建管理员的Action实现类 111
3.9.4 系统登录设计 112
3.9.5 查看管理员列表设计 115
3.9.6 添加管理员信息设计 118
3.9.7 设置管理员权限设计 121
3.9.8 删除管理员设计 124
3.10 图书档案管理功能模块设计 125
3.10.1 图书档案管理功能模块总体架构 125
3.10.2 定义图书档案的ActionForm实现类 125
3.10.3 创建图书档案的Action实现类 126
3.10.4 查看图书信息列表设计 127
3.10.5 添加图书信息设计 129
3.10.6 修改图书信息设计 131
3.10.7 删除图书信息设计 132
3.11 图书借还管理功能模块设计 133
3.11.1 图书借还管理功能模块总体架构 133
3.11.2 定义图书借还管理的ActionForm实现类 134
3.11.3 创建图书借还管理的Action实现类 134
3.11.4 图书借阅设计 135
3.11.5 图书归还设计 138
3.11.6 图书借阅查询设计 140
3.11.7 借阅到期提醒设计 143
3.11.8 图书借阅排行榜设计 145
3.12 疑难问题分析与解决 146
3.12.1 如何自动计算图书归还日期 146
3.12.2 如何对图书借阅信息进行统计排行 147
第4章 医药进销存管理系统 148
4.1 概述 149
4.2 系统分析 149
4.2.1 需求分析 149
4.2.2 可行性分析 149
4.3 总体设计 149
4.3.1 项目规划 149
4.3.2 系统功能结构图 150
4.4 系统设计 150
4.4.1 设计目标 150
4.4.2 开发及运行环境 150
4.4.3 数据库设计 151
4.5 技术准备 154
4.5.1 Spring框架 154
4.5.2 Hibernate框架 155
4.6 系统总体架构设计 156
4.6.1 文件架构设计 156
4.6.2 系统架构设计 156
4.7 系统公共类设计 157
4.7.1 编写访问数据库的DAO类 157
4.7.2 编写DAO的代理操作类AdapterDao 159
4.7.3 编写Spring的配置文件appcontext.xml 160
4.7.4 编写处理菜单栏和工具栏按钮的公共类MenuBarEvent 161
4.7.5 编写生成表格模型的公共类BuildTable 162
4.8 Java实体类及Hibernate映射文件的设计 163
4.8.1 药品信息的实体类obj_medicine 163
4.8.2 实体类obj_medicine.java的映射文件 164
4.9 系统主要功能模块设计 164
4.9.1 系统登录模块 164
4.9.2 主界面设计 167
4.9.3 药品基本情况模块 170
4.9.4 药品采购模块 175
4.9.5 库存盘点模块 180
4.9.6 销售退货模块 182
4.9.7 入库明细查询模块 185
4.9.8 用户维护功能模块 189
4.10 疑难问题解析 191
4.10.1 配置Spring访问数据库文件 191
4.10.2 在Hibernate中利用关联关系操纵实体对象 192
4.11 系统常见错误处理 193
4.11.1 通过Spring框架连接数据库 193
4.11.2 配置sessionFactory会话文件 194
4.11.3 配置Hibernate映射文件 195
第5章 销售管理系统 196
5.1 概述 197
5.2 系统分析 197
5.2.1 需求分析 197
5.2.2 可行性分析 197
5.3 总体设计 197
5.3.1 项目规划 197
5.3.2 系统功能结构图 198
5.4 系统设计 198
5.4.1 设计目标 198
5.4.2 开发及运行环境 198
5.4.3 逻辑结构设计 199
5.5 技术准备 201
5.5.1 命名规则 201
5.5.2 Servlet简介 202
5.5.3 Servlet的生命周期 203
5.5.4 加载和实例化Servlet 204
5.5.5 初始化Servlet 204
5.5.6 请求处理 204
5.5.7 Servlet的终结与卸载 204
5.6 系统架构设计 205
5.6.1 系统文件夹架构图 205
5.6.2 文件架构设计 205
5.6.3 类的分布架构设计 206
5.7 工具类的设计与实现 207
5.7.1 数据库连接类的设计与实现 207
5.7.2 字符串处理类的设计与实现 208
5.7.3 保存当前登录员工信息类的实现方法 209
5.7.4 监听当前登录员工的方法 209
5.8 员工操作模块的设计与实现 210
5.8.1 对数据库中表取值和赋值的方法 210
5.8.2 员工登录的实现 212
5.8.3 员工注册的实现 216
5.8.4 员工权限的实现 218
5.8.5 分页的实现 223
5.9 基础信息设置模块的设计与实现 226
5.9.1 职务信息查询的实现 227
5.9.2 职务信息添加的实现 228
5.9.3 职务信息修改的实现 229
5.9.4 职务信息删除的实现 230
5.10 业务管理模块的设计与实现 230
5.10.1 样式层的代码列表 231
5.10.2 订货信息的添加 231
5.10.3 出货信息的添加 233
5.10.4 退货信息的添加 234
5.11 疑难问题解析 236
5.11.1 java.lang.NullPointerException异常 236
5.11.2 JSP区分大小写 236
5.11.3 未被初始化错误 236
第6章 酒店管理系统 237
6.1 概述 238
6.2 系统分析 238
6.2.1 需求分析 238
6.2.2 可行性分析 238
6.3 总体设计 239
6.3.1 项目规划 239
6.3.2 系统功能结构图 239
6.4 系统设计 239
6.4.1 设计目标 239
6.4.2 开发及运行环境 240
6.4.3 逻辑结构设计 240
6.5 技术准备 242
6.5.1 重新定义表格 242
6.5.2 创建支持行标题栏的表格 243
6.5.3 创建日期选择框 246
6.6 系统架构设计 251
6.6.1 系统文件夹架构图 251
6.6.2 文件架构设计 252
6.7 数据持久层设计 252
6.7.1 编写数据库连接类 252
6.7.2 编写操作数据库的方法 253
6.8 主窗体的格局设计 255
6.9 开台签单功能的设计与实现 257
6.9.1 开台与查看 257
6.9.2 点菜与签单 259
6.10 自动结账功能的设计与实现 263
6.11 销售统计功能的设计与实现 265
6.11.1 日销售统计 265
6.11.2 月销售统计 266
6.11.3 年销售统计 267
6.12 人员管理功能的设计与实现 268
6.12.1 员工档案管理 268
6.12.2 系统管理员管理 270
6.13 系统维护功能的设计与实现 271
6.13.1 台号管理 271
6.13.2 菜系管理 273
6.13.3 菜品管理 274
6.14 系统安全功能的设计与实现 276
6.14.1 系统的锁定与解除 276
6.14.2 安全退出系统 278
6.15 疑难问题分析 278
6.15.1 如何弹出菜单 278
6.15.2 如何实现时钟 279
第7章 学生成绩管理系统 281
7.1 概述 282
7.2 系统分析 282
7.2.1 需求分析 282
7.2.2 可行性分析 282
7.3 总体设计 282
7.3.1 项目规划 282
7.3.2 系统功能结构图 283
7.4 系统设计 283
7.4.1 设计目标 283
7.4.2 开发及运行环境 283
7.4.3 逻辑结构设计 283
7.5 技术准备 285
7.5.1 通过Swing组件开发系统窗体界面 285
7.5.2 通过JDBC访问SQL Server 2000数据库 286
7.5.3 批处理 287
7.5.4 ResultSetMetaData类的介绍 287
7.6 系统架构设计 288
7.6.1 系统文件夹架构图 288
7.6.2 文件架构设计 288
7.7 系统实体对象与公共类设计 288
7.7.1 各种实体类的编写 289
7.7.2 操作数据库公共类的编写 289
7.8 登录模块 295
7.9 系统主窗体设计 297
7.10 系统主要模块设计 299
7.10.1 班级信息设置模块设计 299
7.10.2 学生基本信息管理模块设计 301
7.10.3 学生考试成绩信息管理模块设计 304
7.10.4 基本信息数据查询模块设计 308
7.10.5 学生考试成绩明细查询模块设计 310
7.11 疑难问题分析 313
7.11.1 批处理操作学生成绩表 313
7.11.2 生成动态列的查询语句 314
第8章 企业QQ 315
8.1 概述 316
8.2 系统分析 316
8.2.1 需求分析 316
8.2.2 可行性分析 316
8.3 总体设计 316
8.3.1 项目规划 316
8.3.2 系统功能结构图 317
8.4 系统设计 317
8.4.1 设计目标 317
8.4.2 开发及运行环境 317
8.4.3 数据库设计 318
8.5 技术准备 318
8.5.1 Java系统托盘 318
8.5.2 嵌入式连接JavaDB数据库 319
8.6 系统总体架构设计 319
8.6.1 文件架构设计 319
8.6.2 系统架构设计 320
8.7 系统公共类设计 320
8.7.1 编写访问数据库的DAO类 320
8.7.2 编写代码创建系统托盘 323
8.7.3 编写系统工具类 325
8.8 系统主要功能模块设计 329
8.8.1 主窗体设计 329
8.8.2 用户列表模块 334
8.8.3 用户通信模块 338
8.8.4 系统工具模块 343
8.8.5 系统设置模块 347
8.9 疑难问题解析 350
8.9.1 程序端口被占用 350
8.9.2 发送信使信息 351