目录

  1. 应用技术
  2. 需求分析
  3. 总体设计
  4. 项目UI展示

一、应用技术

  ①SSH

 SSH是 struts+spring+hibernate的一个集成框架,是目前比较流行的一种Web应用程序开源框架。区别于 Secure Shell 。集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持,Spring做管理,管理struts和hibernate。具体做法是:用面向对象的分析方法根据需求提出一些模型,将这些模型实现为基本的Java对象,然后编写基本的DAO(Data Access Objects)接口,并给出Hibernate的DAO实现,采用Hibernate架构实现的DAO类来实现Java类与数据库之间的转换和访问,最后由Spring做管理,管理struts和hibernate。

  ②MySQL数据库
 MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。由于MySQL是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进行修改。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。MySQL这个名字,起源不是很明确。一个比较有影响的说法是,基本指南和大量的库和工具带有前缀“my”已经有10年以上,而且不管怎样,MySQL AB创始人之一的Monty Widenius的女儿也叫My。这两个到底是哪一个给出了MySQL这个名字至今依然是个迷,包括开发者在内也不知道。MySQL的海豚标志的名字叫“sakila”,它是由MySQL AB的创始人从用户在“海豚命名”的竞赛中建议的大量的名字表中选出的。获胜的名字是由来自非洲斯威士兰的开源软件开发者Ambrose Twebaze提供。根据Ambrose所说,Sakila来自一种叫SiSwati的斯威士兰方言,也是在Ambrose的家乡乌干达附近的坦桑尼亚的Arusha的一个小镇的名字。MySQL,虽然功能未必很强大,但因为它的开源、广泛传播,导致很多人都了解到这个数据库。它的历史也富有传奇性。
二、需求分析
  

  1、系统介绍

    本系统是建立在B/S架构之上的SSH鞋城销售系统,能够实现简单的购物商城的基本功能。通过对生活中的购物商城的了解及研究,我参照了一些系统的功能需求,开发出了此系统。

  2、可行性分析

    可行性分析的基础是,项目可以不做,目的是避免项目的开发风险,避免资源浪费。因为每个项目都需要消耗时间和资源,等等。

    可行性分析的任务是从系统的逻辑模型,找到解决问题的办法,如果有几个或更多的可行性,也应该在这些方案中根据问题的规模,需要的成本等因素,选择一个最佳的解决方案。在大多数情况下,可行性分析一般是从技术可行性,经济可行性,社会可行性和操作可行性等。

  3、 功能需求

  通过对亚马逊,当当网等网上鞋城销售商城的认识和分析,我对网上鞋城销售有了大致的了解,我觉得此系统应该具有以下的一些基本功能模块:

    登陆的管理:能够对用户的输入进行有效性和正确性的验证,并给出提示。

    注册的管理:能够对用户名,密码进行简单的验证;能够对邮箱进行有效性的验证;防止有人利用页面刷新来重复注册,以及对已经注册的用户不能够重复注册。

    商品的浏览:可以分类的显示商品;提供可以购买的链接;也可以对商品进行简单的模糊查询操作。浏览所有的商品时不用用户登录,但在下订单时用户则必须进行登录操作。

    购物车的管理:想要购买的商品,可以添加到购物车;也可以从购物车中删除该商品,清空掉该购物车;对于同一个商家的同一个商品进行多次购买则只能在原先的商品上增加数量,还可修改购物车某件商品的数量,最后进行所购商品的金额汇总。

    订单的管理:只有在登录的前提下才有订单;顾客可查看自身的订单情况。管理员可修改订单的进程状态。

    商品的管理:管理员可修改商品的基本信息;增加商品的时候可进行上传图片的操作;商品的基本信息删除的时候,已经存在的商品订单信息只有用户自身可删除。

    用户管理:管理员可以对用户信息进行增删改查的处理。

    留言管理:用户可以填写留言信息,管理员可以对留言信息进行回复。

    公告管理:管理员可以动态添加公告信息,在首页面进行显示。

    养护管理:管理员可以动态添加养护小常识,在首页面进行显示。

    标签管理:管理员可以动态输入标签名称,标签URL地址,添加成功后可以在界面的菜单栏显示。

三、总体设计
    总体设计阶段的一个重要任务是设计软件的结构,也就是要确定系统中每个程序是由哪些模块组成的,以及这些模块之间相互的关系。网上鞋城销售系统分为前台和后台,前台界面,包括用户登陆,注册,商品浏览,我的订单,购物车、今日特价、热卖推荐、最近浏览、留言等几个模块。后台部分,包括用户管理,订单管理,商品管理公告管理、标签管理、养护管理、、留言管理等几个模块。
四、UI展示
    
 
String WEBdownLoadURL = "http://webcodeschool.hrxxkj.com/webindex";
String wchat = "GZH:校猿码";

  

  

SSH鞋贸商城的设计与实现的更多相关文章

  1. YiShop_商城网站设计应该注意什么

    商城网站的建设,不是一件简单的事情,当然,也不要把商城网站的建设想得那么的复杂,在建设商城网站的时候 ,只要考虑到以下这些因素,定能把商城网站建设工作做好.那么商城网站建设要考虑哪些因素:(1)风格 ...

  2. Java生鲜电商平台-商城优惠券设计要点复盘与总结

    Java生鲜电商平台-商城优惠券设计要点复盘与总结 Java生鲜电商平台本文将从优惠券设计用户端,需求端,业务流程全方案解析优惠券设计方案 为什么要设计优惠券 设计优惠券的核心:拉新和促活 新产品上线 ...

  3. BrnShop开源网上商城第一讲:架构设计

    首先在此感谢大家对BrnShop项目的支持和鼓励!我们在发布BrnShop以前曾推测项目会受到不少园友的支持,但没想到园友们的支持大大超过我们的预测.4天6000次浏览,140个推荐,170个评论,8 ...

  4. ssh整合问题总结--在添加商品模块实现图片(文件)的上传

    今天在做毕设(基于SSH的网上商城项目)中碰到了一个文件上传的需求,就是在后台管理员的商品模块中,有一个添加商品,需要将磁盘上的图片上传到tomcat保存图片的指定目录中: 完成这个功能需要两个步,第 ...

  5. SSH协议详解(转)

    转发的http://blog.csdn.net/macrossdzh/article/details/5691924 很透彻啊,学习了 一.什么是SSH SSH是英文Secure Shell的简写形式 ...

  6. ThinkPHP5+Apicloud+vue商城APP实战

    ThinkPHP5+Apicoud+vue商城APP实战 目录 章节1:项目概述 课时1apicloud平台介绍.04:38 课时2知识体系架构介绍.16:10 章节2:apicloud50分钟快速入 ...

  7. SMTP 通过 ssh 通道发送垃圾邮件

    通过SSH隧道传输SMTP 根据设计,我们不允许校外机器使用我们的SMTP服务器.如果我们允许它,我们将允许任何和所有使用我们的SMTP服务器来分发垃圾邮件.但是也可以通过我们的SMTP服务器发送邮件 ...

  8. ssh-keyscan - 收集 ssh 公钥

    总览 (SYNOPSIS) ssh-keyscan -words [-v46 ] [-p port ] [-T timeout ] [-t type ] [-f file ] [host | addr ...

  9. SSH、SSL与HTTPS的联系

    SSH 维基百科中对SSH协议的定义如下 Secure Shell(缩写为SSH),由IETF的网络工作小组(Network Working Group)所制定:SSH为一项创建在应用层和传输层基础上 ...

随机推荐

  1. 在asp.net web api 2 (ioc autofac) 使用 Serilog 记录日志

    Serilog是.net里面非常不错的记录日志的库,另外一个我认为比较好的Log库是NLog. 在我个人的asp.net web api 2 基础框架(Github地址)里,我原来使用的是NLog,但 ...

  2. js的异步和单线程

    最近,同事之间做技术分享的时候提到了一个问题"js的异步是另开一个线程吗?"当时为此争论不休.会后自己查阅了一些资料,对这个问题进行一个自我的分析与总结,有不同意见的希望可以赐教, ...

  3. ios 自动化构建 code-select: error: tool 'xcodebuild' requires Xcode, but active developer directory.....

    问题描述: Pod installation complete! There are 2 dependencies from the Podfile and 3 total pods installe ...

  4. linux-centerOs6.8安装nginx与配置

    一:安装nginx 1.安装gcc(命令:yum install gcc)备注:可以输入gcc -v查询版本信息,查看是否自带安装 2.安装pcre(命令:yum install pcre-devel ...

  5. RBAC用户特别授权的思考

    场景: 标准的RBAC,授权只应该赋予角色,再把角色指派给用户,当需要对特定用户授予权限时,就只能新建一个角色指派给这个用户.这就意味着每对一个新用户做特别授权都要创建一个特别角色. 今天脑洞大开,想 ...

  6. 从零开始学习PYTHON3讲义(六)for循环跟斐波那契数列

    <从零开始PYTHON3>第六讲 几乎但凡接触过一点编程的人都知道for循环,在大多数语言的学习中,这也是第一个要学习的循环模式. 但是在Python中,我们把for循环放到了while循 ...

  7. python:pip命令使用

    pip命令安装库  pip install 库名 使用pip命令更新库 pip install --upgrade 库名 比如更新scikit-learn包 pip install --upgrade ...

  8. C语言程序猿必会的内存四区及经典面试题解析

    前言: 为啥叫C语言程序猿必会呢?因为特别重要,学习C语言不知道内存分区,对很多问题你很难解释,如经典的:传值传地址,前者不能改变实参,后者可以,知道为什么?还有经典面试题如下: #include & ...

  9. 【Java基础】【24多线程(上)】

    24.01_多线程(多线程的引入)(了解) 1.什么是线程 线程是程序执行的一条路径, 一个进程中可以包含多条线程 多线程并发执行可以提高程序的效率, 可以同时完成多项工作 2.多线程的应用场景 红蜘 ...

  10. leetcode — binary-tree-level-order-traversal

    import org.lep.leetcode.binarytreeinordertraversal.BinaryTreeInOrderTraversal; import java.util.Arra ...