# 基于JSP实现的网上书店管理系统
# 一、需求分析
随着时代的发展,电子商务已经成为人们生活中必不可少的一部分。网上书店系统主要用来在网上买东西。本系统要实现如下功能:
- 前端页面通过table标签来展示书本信息,消费者可以看到书本的价格,书本的名称,作者,简介,书本所属的类型,以及对该类型的介绍
- 用户使用该系统,需要先登录系统,没有账户的用户,需要先注册一个账户,注册需要提供用户名,密码,手机,地址,邮箱等信息,本系统承诺,个人信息严格保密,只用于本系统的登录,不用做其他用途
- 加入购物车,当用户挑到喜欢的东西后可以加入购物车,可以在我的购物车中查看
- 后台页面,可以对书本进行增删改查
# 二、概要设计
## 2.1 数据库设计
**Book表**
| 字段名 | 类型 | 说明 | 备注 |
| ----------- | ----------- | ---------- | ----------- |
| id | Int | 书的序号 | 主键 |
| name | Varchar(11) | 书名 | |
| author | Varchar(10) | 书的作者 | |
| price | Varchar(6) | 书的价格 | |
| image | Varchar(50) | 书的图片 | |
| description | Varchar(50) | 对书本的描述 | |
| category_id | Varchar(50) | 书本所对应的书本类型 | 有军事,科学,古典名著 |
**User表**
| 字段名 | 类型 | 说明 | 备注 |
| -------- | ----------- | ---- | ----------- |
| id | bigint | 用户序号 | 主键 |
| username | Varchar(11) | 用户名 | |
| phone | Varchar(10) | 电话号码 | |
| email | Varchar(6) | 邮政编码 | |
| address | Varchar(50) | 详细地址 | |
| type | Int(1) | 类型 | 1为管理员0为普通用户 |
**category表**
| 字段名 | 类型 | 说明 | 备注 |
| -------------------- | ----------- | ---- | ---- |
| id | Varchar(11) | 用户序号 | 主键 |
| type | Varchar(11) | 书本类型 | |
| category_description | Varchar(10) | 类型描述 | |
ategory表将配合Book表一起,实现内联查询。
**视图**
![](http://www.writebug.com/myres/static/uploads/2021/10/19/da159cac5d6ac993f1ee6c8c3804881e.writebug)
## 2.1 系统账号和密码说明
- **用户账户**:zhangsan
**密码**:123
- **管理员账户**:zhangsan
**密码**:123
# 三、详细设计
## 3.1 登陆页面
分为管理员登录和用户登录。用户登录界面加了一些样式,看起来较为美观。用户界面有验证码。可以选择用户类型。
![](http://www.writebug.com/myres/static/uploads/2021/10/19/a121416c4d9e73d5009375f423eee65e.writebug)
## 3.2 注册界面
注册页面需要提供用户名,密码,email,手机号,地址等,点击注册后将会把数据发送到后台页面。
![](http://www.writebug.com/myres/static/uploads/2021/10/19/534aac37ec8758f10ac329c764360dc7.writebug)
## 3.3 用户首页界面
在首页界面中,将会从数据库中读出数据,并在前台页面展示,在前台的页面展示用的是table标签,里面做了一些简单的样式,其中图片模块,是将图片的相对路径存在数据库中,然后在table中用一个img标签来显示出来,有了图片后,整个界面更美观。
首页页面联合查询了两张表,一张book表,一张是category表
![](http://www.writebug.com/myres/static/uploads/2021/10/19/1f97ac28e22710cfa9ed1d3ef4c49957.writebug)
## 3.4 管理员界面
在管理员界面中,可以对商品进行增加删除修改。
![](http://www.writebug.com/myres/static/uploads/2021/10/19/3afa06a17e0a94d53477892e83c6e656.writebug)
## 3.5 我的购物车
```
Map<Integer,CartItem>cart
```
我的购物车是Map来作为购物车的容器,用map而不用list,是因为map不允许有重复的key值,也就是不用像list手动去判断,map中有的话,我们只需要将他的数量加1即可。然后将map容器放入session中,放入session中的目的是让其他页面也可以访问到购物车中的数据。
我的购物车中可以简单的计算价格总额。
![](http://www.writebug.com/myres/static/uploads/2021/10/19/1b3ce42cb766e00fdd3443f6c76313a0.writebug)
![](http://www.writebug.com/myres/static/uploads/2021/10/19/0b43558f698933319dc9f904d73a343c.writebug)
## 3.5 对书本的增删改查
**增加**
![](http://www.writebug.com/myres/static/uploads/2021/10/19/c9aa77f162b5496a8301702124909656.writebug)
**修改**
![](http://www.writebug.com/myres/static/uploads/2021/10/19/fc47ff89c3c5d4e628deb4e8c505c247.writebug)
**删除**
![](http://www.writebug.com/myres/static/uploads/2021/10/19/ec9c75aaf468e50e0e02bd710c2b91ae.writebug)
## 3.6 搜索结果
本系统支持搜索商品,并将搜索结果以table的形式展示出来,搜索完成后,可以点返回返回首页。
![](http://www.writebug.com/myres/static/uploads/2021/10/19/82bb91626da519f9ae7b7253fdc51b9c.writebug)
# 四、心得体会
本系统的难点是,用MVC的思维去开发,项目的目录结构怎么划分,表与表之间怎么建立关系,通过这次实验,我学会了如何封装数据库连接过程,如何采用分层开发的思想来使项目代码简化,以及怎么在数据库中建立视图,怎么将几张表通过外键关联起来。
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
8634112929642264.zip (82个子文件)
booktest_jsp
src
《web应用程序设计(JSP)》期末项目报告.docx 1.2MB
ZhuanWeeKWork
.classpath 1KB
.settings
org.eclipse.wst.jsdt.ui.superType.name 6B
org.eclipse.jdt.core.prefs 357B
org.eclipse.core.resources.prefs 84B
.jsdtscope 510B
com.genuitec.eclipse.core.prefs 94B
org.eclipse.wst.common.component 490B
org.eclipse.wst.common.project.facet.core.xml 403B
org.eclipse.wst.jsdt.ui.superType.container 49B
src
com
sicnu
servlet
AdminServlet.java 5KB
UsrServlet.java 5KB
CartServlet.java 4KB
dao
UserDao.java 1KB
BookDao.java 3KB
model
CartItem.java 512B
BookModel.java 1KB
UserModel.java 825B
util
MD5_Encoding.java 10KB
DB.java 1KB
WebRoot
car.jsp 3KB
Admin_insert.jsp 2KB
Admin_update.jsp 2KB
WEB-INF
classes
com
sicnu
servlet
AdminServlet.class 4KB
CartServlet.class 3KB
UsrServlet.class 4KB
dao
UserDao.class 2KB
BookDao.class 4KB
model
BookModel.class 2KB
CartItem.class 861B
UserModel.class 1KB
util
DB.class 3KB
MD5_Encoding.class 8KB
lib
jspsmartupload.jar 12KB
mysql-connector-java-5.1.26-bin.jar 836KB
web.xml 3KB
index.jsp 3KB
js
jquery.min.js 94KB
admin.jsp 3KB
search.jsp 2KB
img
bj2.gif 304B
on.png 917B
password1.png 3KB
b2.jpg 13KB
xiyouji.jpg 45KB
bottle.jpg 17KB
user1.png 3KB
bj.gif 3KB
icon1.png 11KB
icon4.png 1KB
bj5.gif 568B
rememberPassword2.png 1KB
logo.png 16KB
timg.jpg 124KB
ma.jpg 19KB
bg1.png 99KB
bg.png 74KB
user.png 2KB
bg1.gif 3KB
_21.gif 1KB
history.jpg 10KB
icon3.png 442B
user2.png 3KB
bj3.gif 3KB
rememberPassword1.png 1KB
self.jpg 32KB
icon.png 1KB
password2.png 3KB
user4.png 4KB
ziben.jpg 64KB
icon2.png 340B
css
login1.css 3KB
login.css 3KB
regist.css 1KB
register.jsp 2KB
Random.jsp 2KB
META-INF
MANIFEST.MF 36B
login.jsp 3KB
.project 1KB
bookstore.sql 7KB
LICENSE 1KB
README.md 6KB
共 82 条
- 1
资源评论
工具盒子
- 粉丝: 60
- 资源: 1313
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功