# Java-ShuCheng
Java网上图书商城,项目基于MVC设计模式,采用B/S结构
## 1.1前台首页设计
首页模块包括3个主要的部分,采用内嵌框架技术。位置分别为上、左、中。
![首页](/blob/master/.settings/readmeImgage/%E9%A6%96%E9%A1%B5.png)
### 1.上部的实现
上部包含两大部分内容:
* 网站标题;
* 菜单;
菜单部分就是一系列的超链接,用户在未登录时看到的是“登录”和“注册”链接;在登录后看到的是“我的购物车”、“我的订单”、“修改密码”、“退出”超链接,以及当前用户名称。
### 2.左部的实现
左部显示所有分类,包含所有1级、2级分类。左部使用了Javascript的Q6Menu组件来完成显示所有分类。当用户点击某个1级分类名称时会展示当前1级分类的所有2级分类。
### 3.中部的实现
中部是网站的骨干,点击任何超链接都会在中部显示。默认只是使用纯文本显示欢迎信息。
## 1.2 用户模块
注册用户是构成网站主体的一个重要组成部分,网站设置注册用户的目的之一在于方便网站信息的管理。
### 1.2.1 用户注册
用户在登录之前需要先进行注册,在首页中点击“注册”链接就可以到达注册页面。
![注册](/blob/master/.settings/readmeImgage/%E7%94%A8%E6%88%B7%E6%B3%A8%E5%86%8C.png)
#### 1.表单校验
注册页面使用JQuery对用户输入的数据进行校验:
* 用户名:
* 不能为空;
* 长度必须在2-15之间;
* 不能是已注册过的;
* 登录密码:
* 不能为空;
* 长度必须在2-15之间;
* 确认密码:
* 不能为空;
* 必须与登录密码相同;
* Email:
* 不能为空;
* 必须是正确的Email格式;
* 不能是注册过的Email;
* 验证码:
* 不能为空;
* 必须与图片上的验证码相同。
表单校验中,用户名是否被注册过、Email是否被注册过、验证码是否正确这三项都需要请求服务器,所以这里使用的是JQuery的ajax()来完成对服务器的访问。
#### 2.激活
当用户注册成功后还需要激活成功后才能登录。在注册成功后,系统给用户的邮箱发送一份激活邮件。当用户登录自己的邮箱后,在激活邮件中点击激活链接完成激活后,才可以去登录。
### 1.2.2 用户登录
在首页点击“登录”链接就可以来到登录页面。
![登录](/blob/master/.settings/readmeImgage/%E7%94%A8%E6%88%B7%E7%99%BB%E5%BD%95.png)
#### 1.表单校验
* 用户名:
* 不能为空;
* 长度必须在2-15之间;
* 用户名是否存在;
* 密码:
* 不能为空;
* 长度必须在2-15之间;
* 验证码:
* 不能为空;
* 是否正确。
登录表单校验使用的JQuery完成,其中用户名是否存在,以及验证码是否正确需要使用JQuery的ajax()向服务器发送异步请求。
#### 2.登录成功
用户登录成功后,会回到首页。这时在首页会显示当前用户的名称,以及“我的购物车”、“我的订单”、“修改密码”、“退出”链接。也就是说,这几个功能只能登录用户才能使用,而游客是无法使用的。
### 1.2.3 修改当前用户密码
用户在登录成功后,点击修改密码链接就会到达修改密码页面。
![图书详细](/blob/master/.settings/readmeImgage/%E4%BF%AE%E6%94%B9%E5%AF%86%E7%A0%81.png)
#### 1.表单校验
* 原密码:
* 不能为空;
* 长度必须在2-15之间;
* 是否正确;
* 新密码:
* 不能为空;
* 长度必须在2-15之间;
* 确认密码:
* 不能为空;
* 必须与新密码相同;
* 验证码:
* 不能为空;
* 是否正确。
表单校验使用JQuery完成。其中原密码和验证码是否正确,需要异步访问服务器,这里使用的是JQuery的ajax()完成的。
### 1.2.4 退出
当用户登录后,点击退出链接可以完成退出。退出成功后会到达登录页面!
## 1.3 图书模块
### 1.3.1 图书列表
在首页左部点击某个2级分类,会在首页的中部显示图书列表页面。图书列表使用分页显示。
![图书列表](/blob/master/.settings/readmeImgage/%E5%9B%BE%E4%B9%A6%E5%88%97%E8%A1%A8.png)
可以在图书列表上方输入关键字进行搜索。
### 1.3.2 图书详细
点击某本图书,会到达图书详细页面。
![图书详细](/blob/master/.settings/readmeImgage/%E5%9B%BE%E4%B9%A6%E8%AF%A6%E6%83%85.png)
### 1.3.3 高级搜索
在图书列表页面点击高级搜索到达搜索页面。
![高级搜索](/blob/master/.settings/readmeImgage/%E9%AB%98%E7%BA%A7%E6%90%9C%E7%B4%A2.png)
高级搜索有三个条件:书名、作者、出版社,三个条件的关系是并列的。而且三个条件都是模糊查询。
## 1.4 购物车
购物车使用数据库来保存数据,也就是说添加到购物车中的图书,不会因为关闭浏览器,或者是关闭电脑而消失。而且修改数量,是通过异步请求来操作数据库的。
### 1.4.1 添加图书到购物车
在图书详细页面,给出数量,然后点击“购买”就可以把图书添加到购物车中,并且会到达购物车列表页面。
![高级搜索](/blob/master/.settings/readmeImgage/%E6%B7%BB%E5%8A%A0%E5%9B%BE%E4%B9%A6%E5%88%B0%E8%B4%AD%E7%89%A9%E8%BD%A6.png)
### 1.4.2 我的购物车
也可以在首页上部点击“我的购物车”链接查询购物车。购物车列表页面会显示所有车中所有条目,每个条目会显示图书图片、图书名称、图书当前价、数量,以及小计。
### 1.4.3 修改条目数量
在购物车列表页面中,点击某个条目上的数量来完成修改数量。这项操作会修改底层数据库。所以这里需要使用JQuery的异步处理访问服务器,完成对数据库表的修改。
当数量为1时,如果把数量减1,会弹出确认对话框,提示是否删除该条目。
### 1.4.4 删除条目
在购物车列表页面中,点击某个条目后面的“删除”链接会删除当前条目。
也可以勾选N个条目,然后点击“批量删除”链接,完成一次删除多个条目。
## 1.5 订单模块
对订单的操作,对应数据库中的两张表,即订单表和订单条目表(t_order和t_orderitem)。
而且订单模块的功能比较多:
* 生成订单:通过购物车中勾选的条目来生成订单;
* 我的订单:显示当前用户的所有订单,每个订单所包含的订单条目也需要显示;
* 订单支付:使用易宝的第三方支付平台完成,对“在线支付”的理解也是一个挑战;
* 订单详细:显示指定的某个订单;
* 订单取消和订单的确认收货:这两个功能都是对订单状态的修改。
### 1.5.1 选中条目,准备生成订单
在购物车列表页面中,勾选要购买的条目,然后点击“结算”按钮,完成选中条目,准备生成订单,这会到达订单准备页面。
![整体流程](/blob/master/.settings/readmeImgage/%E9%80%89%E4%B8%AD%E6%9D%A1%E7%9B%AE%E7%94%9F%E6%88%90%E8%AE%A2%E5%8D%95.png)
### 1.5.2 生成订单
在订单准备页面,输入收货地址,然后点击“提交订单”按钮,完成下单(生成订单)。这时会到达“下单成功”页面。
![整体流程](/blob/master/.settings/readmeImgage/%E7%94%9F%E6%88%90%E8%AE%A2%E5%8D%95.png)
这时订单已经生成,但状态为“未付款”。可以在“下单成功”页面点击“支付”按钮到达“支付”页面。
### 1.5.3 订单列表
在首页上部点击“我的订单”链接,就会到达订单列表页面。该页面会显示当前用户的所有订单信息。该页使用分页显示订单!
![整体流程](/blob/master/.settings/readmeImgage/%E8%AE%A2%E5%8D%95%E5%88%97%E8%A1%A8.png)
### 1.5.4 支付页面
在“下单成功”页面,或者“订单列表”页面中点击“支付”按钮都可以到达“
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
Java网上图书商城,项目基于MVC设计模式,采用B-S结构.zip (689个子文件)
btn.bmp 7KB
pingan.bmp 6KB
hx.bmp 6KB
gf.bmp 6KB
cmb.bmp 6KB
cmbc.bmp 6KB
ccb.bmp 6KB
dy.bmp 6KB
post.bmp 6KB
abc.bmp 6KB
zx.bmp 6KB
bj.bmp 6KB
sfz.bmp 6KB
beijingnongshang.bmp 6KB
cib.bmp 6KB
sh.bmp 6KB
icbc.bmp 6KB
ningbo.bmp 6KB
bcc.bmp 6KB
guangda.bmp 6KB
bh.bmp 6KB
bc.bmp 6KB
shpd.bmp 6KB
nanjing.bmp 6KB
zheshang.bmp 6KB
新建位图图像.bmp 0B
OrderServlet.class 10KB
BookDao.class 8KB
OrderDao.class 7KB
AdminBookServlet.class 7KB
UserServlet.class 7KB
AdminAddBookServlet.class 6KB
CartItemDao.class 6KB
CategoryDao.class 5KB
UserService.class 4KB
PaymentUtil.class 4KB
AdminCategoryServlet.class 4KB
BookServlet.class 4KB
CartItemServlet.class 4KB
Book.class 4KB
UserDao.class 3KB
BookService.class 3KB
User.class 3KB
CartItemService.class 3KB
CategoryService.class 2KB
Order.class 2KB
OrderService.class 2KB
CartItem.class 2KB
PageBean.class 2KB
AdminLoginFilter.class 2KB
LoginFilter.class 2KB
Category.class 2KB
AdminServlet.class 2KB
OrderItem.class 2KB
Expression.class 1KB
CategoryServlet.class 1KB
AdminDao.class 1KB
AdminService.class 1KB
Admin.class 960B
UserException.class 757B
PageConstants.class 405B
.classpath 1KB
org.eclipse.wst.common.component 466B
org.eclipse.wst.jsdt.ui.superType.container 49B
jquery-ui-1.8.14.custom.css 33KB
jquery-ui-1.8.14.custom.css 33KB
jquery.ui.theme.css 18KB
jquery.ui.theme.css 17KB
demos.css 14KB
jquery.ui.datepicker.css 4KB
jquery.ui.datepicker.css 4KB
jquery.datepick.css 4KB
desc.css 3KB
jquery.ui.button.css 2KB
jquery.ui.button.css 2KB
desc.css 2KB
list.css 2KB
jquery.ui.core.css 1KB
jquery.ui.core.css 1KB
jquery.ui.tabs.css 1KB
jquery.ui.tabs.css 1KB
jquery.ui.dialog.css 1KB
jquery.ui.dialog.css 1KB
mymenu.css 1KB
pay.css 1KB
login.css 1KB
ordersucc.css 1KB
desc.css 1KB
pager.css 1KB
jquery.ui.resizable.css 1KB
jquery.ui.resizable.css 1KB
jquery.ui.slider.css 1KB
jquery.ui.slider.css 1KB
showitem.css 1KB
jquery.ui.autocomplete.css 1KB
jquery.ui.autocomplete.css 1KB
list.css 1KB
list.css 1KB
jquery.ui.accordion.css 1KB
jquery.ui.accordion.css 1KB
共 689 条
- 1
- 2
- 3
- 4
- 5
- 6
- 7
资源评论
苹果酱0567
- 粉丝: 1891
- 资源: 981
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功