图书商城
环境搭建 1.导入原型 *用户模块 *分类模块 *图书模块 *购物车模块 *订单模块2.功能分析
*前台 **用户模块 >注册 >激活 >登录 >退出**分类模块
>查看所有分类**图书模块
>查询所有图书 >按分类查询图书 >查询图书详细(按id查询)**购物车模块
>添加购物车条目 >清空所有条目 >删除指定条目 >我的购物车(按用户查询购物车)**订单模块
>生成订单 >我的订单(按用户查询订单) >按id查询订单 >确认收货 >付款功能(只能跳转到银行页面) >付款回调功能(由银行来调用我们这个方法,表示用户已经付款成功)*后台:
**管理员 >登录**分类管理
>添加分类 >查看所有分类 >删除分类 >按id查询 >修改分类**图书管理
>查询所有图书 >按id查询 >删除图书 >修改图书 >添加图书(上传图片)**订单模块
>查询所有订单 >按状态查询订单 >发货3.框架的搭建
3.1导包 *数据库 **mysql驱动 **c3p0(jar包和配置文件) **dbutils **itcast-tools >commons-beanutils >commons-logging*javamail
**mail.jar **activation.jar*上传
**commons-fileupload **commons-io*ajax
json-lib3.2创建pachage
*根:com.changemax.bookstore **user >domain >dao >service >web.servlet**category
>domain >dao >service >web.servlet**book
>domain >dao >service >web.servlet**cart
>domain >web.servlet**order
>domain >dao >service >web.servlet3.3表
*tb_user *category *book *orders *orderitem 用户模块 1.用户模块的相关类创建 *domain:User *dao:UserDao *service:UserDao *web.servlet:UserServlet2.用户注册
流程:/jsps/user/regist.jsp ->UserServlet#regist() ->msg.jsp 页面: *regist.jsp **表面页面,请求UserServlet#regist()方法 **参数:整个表单数据 *msg.jspServlet:
*UserServlet#regist() **一键封装表单数据到User form对象 **补全:uid、激活码 **输入校验 >保存错误信息到request >保存当前表单数据(form)到request(回显); >转发回到regist.jsp **调用service的regist()方法,传递form过去 >如果跑出异常:保存错误信息(异常信息)、保存表单数据(回显)、转发到regist.jsp >如果没有抛出异常: ***发邮件(发件人、收件人、标题、内容),内容中包含超链接,超链接指向可完成激活的Servlet地址。链接中要有激活码参数 ***保存成功信息到request中。 ***转发到msg.jsp Service: *UserService#regist(User form) **校验用户是否被注册,如果注册,抛出UserException **校验邮箱是否被注册,如果注册,抛出UserExcetpion; **把user插入到数据库中Dao:
*User findByUsername(String username):按用户名查询用户 *User findByEmail(String email):按email查询用户 *void add(User form):插入用户到数据库中 3.用户激活 流程:用户的邮件中->UserServlet#active()->msg.jsp4.用户登录
流程:/jsps/user/login.jsp -> UserServlet#login() -> index.jsp5.用户退出
流程:top.jsp -> UserServlet#quit() -> login.jsp quit():把session销毁 分类模块 1.分类模块的相关类创建 *com.changemax.bookstore.category **domain:Category **dao:CategoryDao **service:CategoryService **web.servlet:CategoryServlet2.查询所有分类
流程:main.jsp(<iframe>) -> CategoryService#findAll() -> left.jsp 图书模块 1.创建相关类 *com.changemax.bookstore.book **domain:Book **dao:BookDao **service:BookService **web.servlet:BookServlet2.查询所有图书
流程:left.jsp(全部分类) -> BookServlet#findAll() -> /jsps/book/list.jsp3.按分类查询图书
流程:left.jsp -> BookServlet#findByCategory() -> list.jsp4.查询详细信息(加载)
流程:list.jsp(点击某一本书) -> BookServlet#load() -> desc.jsp