后台模块
一:后台用户模块
  1. 引入后台管理页面
  2. 创建adminuser表:
CREATE TABLE `adminuser` (
  `uid` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(255) DEFAULT NULL,
  `password` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`uid`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
  1. 创建包、类:
  • com.weiwei.shopping.adminuser
    • action :AdminUserAction
    • service :AdminUserService
    • dao : AdminUserDao
    • vo :AdminUser + AdminUser.hbm.xml
  1. 功能实现:类似User登录实现
           index.jsp  ---->  AdminUserAction  调用   AdminUserService  调用   AdminUserDao
 
二:后台一级分类管理模块
  1. 查询一级分类:

    • 点击左边树形菜单上的一级分类管理:
    • 修改请求路径:
    • 编写后台管理的Action
      • com.weiwei.shopping.category.adminaction
      • adminaction
      • AdminCategoryAction
    • 配置这个Action:
      • applicationContext.xml
      • struts.xml
  2. 添加一级分类:
    • 在一级分类列表页面上点击”添加”按钮.
               * 跳转到一个添加页面.
    • 在添加页面上,输入一级分类名称.
               * 将一级分类的数据,添加到数据库中.
  1. 删除一级分类:

    • 在一级分类列表页面上点击”删除”链接.
               * 传递一级分类的id.
    • 在Action中:
 * 接收一级分类id
 * 调用Service完成删除.
 * 页面跳转.
  1. 修改一级分类

    • 先根据cid进行查询,转到edit.jsp页面显示数据;
    • 在edit.jsp页面可显示该二级分类的原信息并可编辑保存修改
    • (执行adminCategory_update.action)。
       
三:后台二级分类管理
  1. 查询二级分类
  2. 添加二级分类
    • 在二级分类列表页面上点击”添加”按钮,跳转到添加页面
      • 查询所有的一级分类
    • 在页面上显示出所有的一级分类下拉列表
    • 在添加页面上点击确定
      • 将二级分类的数据保存到数据库
  3. 删除二级分类
    • 在二级分类列表页面上点击”删除”链接
      • 传递删除二级分类id
    • 在Action中接收二级分类id
      • 删除二级分类
      • 先查询在删除.配置cascade属性
  1. 修改二级分类

    • 在二级分类的列表页面上点击”编辑”链接
      • 传递二级分类的id
    • 根据二级分类id查询二级分类.将二级分类数据显示到页面上
      • 查询所有一级分类
    • 跳转到编辑页面
    • 在编辑页面点击确定按钮
      • 将数据修改到数据库.
 
四:后台商品管理
  1. 查询商品:(带分页)

    • 在左边树形菜单上,添加一个节点:商品管理.
    • 创建包:
      • com.weiwei.shopping.product
        • adminaction
        • AdminProductAction
    • 查询:
      • 带分页查询:
    • 配置:
 
  1. 添加商品:(包括上传商品的图片)
    • 在商品列表页面点击"添加"按钮:
      • 查询所有的二级分类:
      • 页面跳转:商品添加页面.
    • 在添加商品的页面
      • 将数据添加到数据库.
      • 完成商品图片上传.
      • struts2框架中文件上传:
      • 文件的条件:
        1. 表单提交的方式需要是POST
        2. 表单中上传项必须有一个name属性.
        3. 表单的enctype属性值需要是multipart/form-data
 
  1. 删除商品:
    • 在商品列表页面上点击"删除"链接:
      • 传递商品的pid.
    • 删除商品的图片.
    • 页面跳转:
 
  1. 修改商品:(上传商品的图片)
    • 1.在商品列表页面上点击"编辑"链接:
      • 传递商品的id.
    • 2.在Action中:
      • 根据商品的id查询商品
      • 查询所有的二级分类集合
      • 页面跳转:
    • 3.在编辑页面:点击”确定”按钮:
      • 将数据保存到数据库中.
      • 修改上传的图片.
      • 页面跳转:
 
五:后台订单管理——只允许查询订单和修改订单状态
  1. 查询订单:
    • 1.在左边树形菜单中添加一个节点:订单管理.
    • 2.创建包、类:
      • com.weiwei.shopping.order
      • adminaction :AdminOrderAction
    • 3.提交到Action中:
      • 传递page参数
      • 分页查询
    • 4.跳转页面:
      • 显示订单:
  1. 订单详情的查看:
    • 1.在订单列表页面中点击”订单详情”按钮:
      • 传递订单oid.
    • 2.使用AJAX异步获取当前这个订单的订单项.
 
  1. 订单状态修改:
    • 1.在后台订单列表页面上点击”发货”链接:
      • 传递订单id
    • 2.在Action中
      • 根据订单id查询订单
      • 修改订单状态:
      • 页面转向:
 
六:前台订单状态修
  1. 在我的订单页面上点击”确认收货”链接:
    • 传递订单id.
  1. 在Action中:
    • 根据订单id查询订单
    • 修改订单状态
    • 页面转向
 
拦截器模块
 
一:后台权限校验拦截器
  1. 拦截器:可以对Action的访问进行拦截。
  2. 编写拦截器:
    • 编写一个类实现Interceptor接口,或者继承Interceptor的子类。
    • 在struts配置文件中配置拦截器。
 
 
 

SSH实战 · 唯唯乐购项目(下)的更多相关文章

  1. SSH实战 · 唯唯乐购项目(上)

    前台需求分析 一:用户模块 注册 前台JS校验 使用AJAX完成对用户名(邮箱)的异步校验 后台Struts2校验 验证码 发送激活邮件 将用户信息存入到数据库 激活 点击激活邮件中的链接完成激活 根 ...

  2. SSH实战 · 唯唯乐购项目(中)

    用户模块 三:一级分类的查询 创建一级分类表并导入基本数据 CREATE TABLE `category` (   `cid` int(11) NOT NULL AUTO_INCREMENT,   ` ...

  3. Asp.Net Core 2.0 项目实战(8)Core下缓存操作、序列化操作、JSON操作等Helper集合类

    本文目录 1.  前沿 2.CacheHelper基于Microsoft.Extensions.Caching.Memory封装 3.XmlHelper快速操作xml文档 4.Serializatio ...

  4. iTunes Store:隐藏和取消隐藏已购项目

    使用 Mac 或 PC 上的 iTunes 来隐藏或取消隐藏已购项目. 如何隐藏已购项目 在 Mac 或 PC 上打开 iTunes. 从 Store 菜单中,选取商店 > 登录,然后输入您的 ...

  5. SSH实战OA 11:BBS模块

    <SSH实战OA>系列博客的系统管理.权限管理等内容后面再补上吧,先继续第三个模块:网上交流模块.网上交流主要做两个需求:论坛管理和论坛. BBS的一些基本术语: 板块:也叫做" ...

  6. 《实战突击:PHP项目开发案例整合(第2版)(含DVD光盘1张)》

    <实战突击:PHP项目开发案例整合(第2版)(含DVD光盘1张)> 基本信息 作者: 徐康明    辛洪郁 出版社:电子工业出版社 ISBN:9787121221378 上架时间:2014 ...

  7. 在Eclipse上使用egit插件通过ssh协议方式上传项目代码的具体步骤

    在Eclipse上使用egit插件通过ssh协议方式上传项目代码 前戏: 使用ssh方式可以不通过https协议,避免直接提供账号密码的方式上传项目到git在线服务器,如Bitbucket.GitHu ...

  8. NET Core微服务之路:实战SkyWalking+Exceptionless体验生产下追踪系统

    原文:NET Core微服务之路:实战SkyWalking+Exceptionless体验生产下追踪系统 前言 当一个APM或一个日志中心实际部署在生产环境中时,是有点力不从心的. 比如如下场景分析的 ...

  9. scrapy电影天堂实战(二)创建爬虫项目

    公众号原文 创建数据库 我在上一篇笔记中已经创建了数据库,具体查看<scrapy电影天堂实战(一)创建数据库>,这篇笔记创建scrapy实例,先熟悉下要用到到xpath知识 用到的xpat ...

随机推荐

  1. MySQL高级知识- MySQL的架构介绍

    [TOC] 1.MySQL 简介 概述 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而 ...

  2. AngularJS过滤器filter-保留小数,小数点-$filter

    AngularJS      保留小数 默认是保留3位 固定的套路是 {{deom | number:4}} 意思就是保留小数点 的后四位 在渲染页面的时候 加入这儿个代码 用来精确浮点数,指定小数点 ...

  3. JavaScript String对象

    本编主要介绍String 字符串对象. 目录 1. 介绍:阐述 String 对象的说明以及定义方式. 2. 实例属性:介绍 String 对象的实例属性: length. 3. 实例方法:介绍 St ...

  4. Javascript面向对象类文章目录

    1.javaScript的原型继承与多态性 2.JavaScript的继承实现方式 3.JS中 call() 与apply 方法

  5. 深入理解CSS中的margin负值

    前面的话 margin属性在实际中非常常用,也是平时踩坑较多的地方.margin折叠部分相信不少人都因为这样那样的原因中过招.margin负值也是很常用的功能,很多特殊的布局方法都依赖于它.它看似简单 ...

  6. HTML骨架结构

    前面的话   一个完整的HTML文档必须包含3个部分:文档声明.文档头部和文档主体.而正是它们构成了HTML的骨架结构.前面已经分别介绍过文档声明和文档头部,本文将详细介绍构成HTML骨架结构的基础元 ...

  7. Mac OS 使用 Vagrant 管理虚拟机(VirtualBox)

    Vagrant(官网.github)是一款构建虚拟开发环境的工具,支持 Window,Linux,Mac OS,Vagrant 中的 Boxes 概念类似于 Docker(实质是不同的),你可以把它看 ...

  8. 用WebRequest +HtmlAgilityPack 从外网抓取数据到本地

    相信大家对于WebRequest 并不陌生,我们在C#中发请求的方式,就是创建一个WebRequest .那么如果我们想发一个请求到外网,比如国内上不了的一些网站,那么该怎么做呢? 其实WebRequ ...

  9. 设计模式之创建类模式大PK

                                        创建类模式大PK 创建类模式包括工厂方法模式.建造者模式.抽象工厂模式.单例模式和原型模式,他们能够提供对象的创建和管理职责.其 ...

  10. 【Java学习系列】第3课--Java 高级教程

    本文地址 可以拜读: 从零开始学 Java 分享提纲: 1. Java数据结构 2. Java 集合框架 3. Java泛型 4. Java序列化 5. Java网络编程 6. Java发送Email ...