第一篇:基于J2EE的网上购物配送管理系统设计
基于J2EE的网上购物配送管理系统设计.txt曾经拥有的不要忘记;不能得到的更要珍惜;属于自己的不要放弃;已经失去的留作回忆。收稿日期:2003-09-01。纪寿文,博士,主研领域:生产物流规划与
仿真,物流配送,AGVS等。
基于J2EE的网上购物配送管理系统设计
纪寿文 林晓宇
(清华大学深圳研究生院现代物流研究中心 深圳518057)李克强 缪立新(清华大学汽车系 北京100084)摘 要
本文采用J2EE技术设计了物流企业电子商务的在线购物和配送管理系统。文中详细介绍了系统的逻辑及功能结构、在
线购物模块和登录注册模块的流程及其J2EE设计方法、采用MVC模式设计控制模块的方法,并给出了核心流程代码。文中也简单
介绍了配送管理模块采用的CW算法。
关键词
J2EE 在线购物 物流配送 CW算法
THE DESIGN FOR WEB SHOPING AND DISTRIBUTING MANAGEMENT BASED ON J2EE Ji Shouwen Lin Xiaoyu(Modern Logistics Research Center ofShenzhen Graduate School, Tsinghua University, Shenzhen518057)Li Keqiang Miao Lixin(Automobile Department, Tsinghua University,Beijing100084)Abstract
Web shopping and dirtributing system for logistics corporation electronic commerce is designed by using J2EE technology in the paper.The logistic and function structure,flow chart and designmethods based on J2EE ofweb shopping,entry and registermodules are introduced particular-ly.The designing method for control module by usingMVC mode is described,and the core flow code is given.The CW algorithm used in distributing management module is also introduced.Keywords J2EE Web shopping Logistics distribution CW algorithm 1 引 言
电子商务的出现,极大地方便了最终消费者,使消费者不必 再跑到拥挤的商业街,一家一家地挑选自己所需的商品,而只要 坐在家里,在因特网上搜索、查看、挑选,就可以完成他们的购物 过程,这些就是所谓的在线购物[1]。
在线购物的成功主要取决于购物系统的功能完善和物流配 送系统的可靠运行。购物系统如果功能完善、验证可靠,使用方 便,则便于用户的浏览和购物。而用户在提交购物订单和支付 货款后,物流配送则成为实现在线购物最终成功的关键,物流配 送的核心问题则是配送车辆的调度。
本文面向企业的电子商务,将对在线购物系统和物流配送 系统统筹考虑,实现信息的共享和车辆的优化调度,为企业提供 了一个易于操作的低费用物流管理系统、基于先进的优化网络 技术的车辆调度以及配送系统。物配平台使得用户可以随时掌 握实时的物流信息并根据客户的要求远程调度产生最佳的配送 方案。该系统的设计中完全采用了面向对象的技术,在实际开发
中采用大量的JAVA技术,例如Servlet、JSP、JavaBean、JDBC、EJB 等,是一套完全基于J2EE的最新技术体系,具有良好的可平台 无关性、可扩展性等[2]。
使用本在线购物系统,企业就可以拥有自己的网络商城,让 企业在技术方面花费最少,从而全力以赴进行货源开发和业务 经营,迅速地展开销售工作。在线商店具备普通商店的大多数 特点,同时又比普通商店具有投资小,运营时间长,无人职守等 特点。2 系统结构
系统包含在线购物模块和物流配送模块,其中在线购物系 统的核心是购物车模块,物流配送系统的包含配送方式选择、配 送路线选择、配送管理等,核心是CW调度算法。两个模块通过 订单信息有机的集成为一个整体,如图1所示。图1 集成系统结构 2·1系统逻辑结构
从逻辑上讲,本系统分为四个层次。分别为用户层、表现
层、业务处理层、数据资源层。详细分析了物流配送企业的需 求,设计系统的逻辑层次结构如图2所示。
2·2系统功能结构
适应现代电子商务快捷的需求,系统中传递的订单是电子
第21卷第3期
计算机应用与软件Vol·21,No·3 2004年3月
Computer Applications and Software Mar·,2004图2 化的。因此,根据使用对象的不同把集成系统划分为调度员、客 户、管理员三个大模块,如图3所示。给客户使用的就是所谓的 在线购物系统,而在服务器端使用系统的是调度员和管理员。调度员主要进行车辆调度,也是一个相对的“用户”。管理员主 要进行客户管理、权限管理、地图信息管理等。图3 集成系统功能模块图 在线购物子系统的设计与实现
3·1在线购物子系统的功能与流程
在线购物是一堆接口定义清晰的独立模块组成。
控制模块:它来分发请求到各个业务处理逻辑,屏幕跳 转控制,对应的组件处理。
登录和注册:登录和注册模块要求用户在访问某些页面 时必须登录。
购物车模块:购物车跟踪用户购物过程。
类别模块:根据用户查询需求提供一个货物类别视图。
客户模块:表示客户信息:地址,联系方式等。各模块之间的信息流程如图4所示。图4 在线购物子模块与信息流程图
3·2在线购物系统的数据库
采用SQL设计在线购物系统的数据库表,主要包括客户信
息表、货物信息表、订单信息表、订单细目表。是允许数据库访
系统逻辑结构图 问的WEB应用程序开发的非常重要的一部分,它将直接影响系 统的长期有效性和产品化程序。
客户信息表中存储了客户的所有信息。其中,customerID是 数据库系统自动生成的。addToMap和nodeID两字段是与另一 子系统GIS信息表相关联的,用来表示电子地图信息。货物信息表描述了每种货物所具有的详细信息。除了货物 自身的信息,还有货物分类的有关信息。我们对货物进行二次 分类,分别用baseClass,subClass来描述货物所属的分类,便于查 询和管理。
3·3采用MVC模式设计与实现控制模块
MVC模式是通过将客户的请求导入单一的对象—控制器。这个控制器随之处理所有的请求,决定下一个要显示的视图,并 且实现所有为保护系统而需要的安全请求。同时,控制器并不 处理商业逻辑,商业逻辑由专门的模型(MODEL)提供。如图5 所示。
图5 MVC模式
经过这样的处理,JSP页面主要起到表达的作用,而由
Servlet控制页面间的跳转,系统商业逻辑和数据由Model来提 供,可以是EJB或JavaBean。
在线购物系统中的ControlServlet就是一个控制器。接收客 户端响应,请求业务逻辑,最后指示跳转页面,如图6所示。图6 在线购物系统MVC模式图
ControlServlet具体代码如下,限于篇幅,只列出与控制功能 相关的代码,并略去部分调用Model的代码。
在ControlServlet中由if条件语句来判断接收页面的请求, 执行相应逻辑,做出处理后,最后由gotoPage()方法跳转到相应 的页面。
pubilc class ControlServlet extends HttpServlet{ static final private String CONTENT TYPE=″text/html;charset=gb2312″;SCBean scb=new SCBean();public void init()throws ServletException{} public void doGet(HttpServletRequest resuest, HttpServletResponse response)throws ServletException;IOException{ doPost(request,response);} if(getPara.equals(″登录″)){
String lonName=ChineseCharSet.toByteString(request.getParameter(″logName″));
String password=ChineseCharSet.toByteString(request.getParameter(″Password″));
DAOFactory SQLServerFactory=DAOFactory.getDAOFactory(DAOFactory.SQLSERVER);
CustomerDAO custDAO=SQLServerFactory.getCustomerDAO();
Customer cust=custDAO.findCustomer(longName);
if(cust!=null&&cust.getPassword().equals(password)){
gotoPage(″/goodsList.jsp″,request,response);
第3期
纪寿文等:基于J2EE的网上购物配送管理系统设计29
}else{
gotoPage(″/loginfailed.html″,request,response);
}} else if(getPara.equals(″注册″)){
gotoPage(″/register.jsp″,request,response);} else if(getPara.equals(″放入购物车″)){
gotoPage(″/shoppingCart.jsp″,request,response);} else if(getPara.equals(″删除″)){
gotoPage(″/shoppingCart.jsp″,request,response);} else if(getPara.equals(″查看购物车″)){
gotoPage(″/shoppingCart.jsp″,request,response);} else if(getPara.equals(″清空购物车″)){
gotoPage(″/shoppingCart.jsp″,request,response);} else if(getPara.equals(″提交订单″)){
gotoPage(″/shoppingCart.jsp″,request,response);} } 3·4购物车模块
购物车模块跟踪用户一次的购买过程。
购物车模块需求: 必须能够跟踪用户购买的货品内容(item)。购物车中的每
个item有唯一标示ID,此外,还有item归属的货物的ID,属于的 种类、名字和单品报价。
每个item必须和一个非负的数量有对应关系,客户可以增 删改和改变item数量,或者清空购物车。
购物车的设计: 购物车是和一个session关联的,因为,归属与某个用户,跨 越多个请求。设计的关键在于在哪里存放购物车的状态信息, 我们使用了有状态的session EJB。此外,使用EJB层存放这些状 态信息,客户端可以不用局限于WEB客户端。购物车的结构如 图7所示。
图7 购物车结构
图7是购物车模块的结构图,客户端使用ShoppingCartLo-calHome来创建ShoppingCartLocal。ShoppingCartEJB这个bean中 包含了所有要求的操作。购物车ShoppingCartEJB包含了一个货 品内容的CartItem对象的Collection,这个CarrItem类是个普通的 可序列化远程传输的类。
购物车模块的实现: 购物车被实现成一个有状态的session EJB,里面包含一个 货品内容(item)的Collection。EJB同时提供出各种方法,来增删 改里面的内容,甚至清空。
EJB层的组件可以直接访问购物车EJB。WEB层维护一个 EJB层的控制器,这个控制器有个方法getShoppingClientFacade()返回ShoppingClientFacadeLocal接口,这个接口的getShoppingCart()方法返回当前用户的购物车session EJB引用。4 车辆调度核心算法———CW算法与实现
CW算法由Clarke和Wright提出,该算法简单易用[3]。本文 将配送货物的体积约束引入CW算法在中,以改进的CW节约 启发式算法来进行车辆的优化调度。
4·1算法原理与求解步骤
假设以Cij表示车辆从点i行驶到点j的费用,可以得到点i 和点j连接在一条线路上的费用节约值。s(i,j)=Ci0+C0j-Cij 若各项任务要求在一定的时间范围内完成,按费用节约值 s(i,j)连接点i和点j时,可能会使j后面的任务的执行不满足 时间要求。当连接点i和点j所在线路时,若车辆到达j点的时 间比原线路上j点任务的开始时间提前,则车辆在j后面的任务 处有可能需要等待;若连接后到达j点的时间比原线路上j点任 务的开始时间推迟,则j后面的任务在执行时可能会发生延迟。以EFj表示连接点i和点j所在的线路后,车辆到达j点的 时间比原线路上车辆到达j点时间的推迟量(或提前量),则EFj 可如下得到: EFj=si+Ti+tij-sj 显然,EFj<0时,车辆到达j点任务的时间提前;EFj=0时, 到达时间不变;EFj>0时,到达时间推迟。其步骤如下: ①首先计算各个点i和点j之间线路的费用节约值s(i,j), 形成集合M,并按照从大到小对s(i,j)进行排序。其中: s(i,j)=ci0+c0j-cij ②若M为空,则终止叠代,否则对M中的第一项s(i,j)考 察是否满足下列条件之一,如满足则转下步,否则转⑥。(a)点i和j均不在已构成的线路上;(b)点i和j在已构成的线路上,但不与车场相连;(c)点i和j位于已构成的不同线路上,均不与车场相连, 且一个是起点,一个是终点。
③考察点i和j连接后的线路上总货运量Q,若Q≤q,则转 下步,否则转⑥。
④计算连接点i和j所在的线路后,车辆到达j点的时间比 原路线上车辆到达j点的时间的变化量EFj:EFj=si+Ti+tij-sj。
(a)若EFj=0,转⑤;(b)若EFj<0,则计算Δj-,当|EFj|≤Δj-,转⑤,否则转⑥;(c)若EFj>0,则计算Δj+,当|EFj|≤Δj+,转⑤,否则转⑥。式中,Δj-为线路上j点后面的各任务处均不需要等待的到 达j点时间的最大允许提前量,其中:Δj-=min r≥j{Sr-ETr}。Δj+ 为线路上j点后面的各任务不违反时间约束的到达j点时间的 最大允许推迟量,其中:Δj+=min r≥j{LTr-Sr}。
⑤连接点i和点j,计算车辆到达各任务时的新时间。⑥令M=M-s(i,j),转②。
4·2 CW算法类的设计
因为我们采用面向对象的程序设计语言java,在编码之前, 建立了面向对象的模型。ResultList、Task、ScheduleValueList、Item 这四个类都是辅助的类。ResultList用来存储计算结果;Task类 用来保存一些调度所需的数据;ScheduleValueList、Item都是计算 过程中的算法需要的中间数据。
计算机应用与软件2004年5 应用程序的部署 基于J2EE的web应用程序是一组Servlet、JSP页面、标记 库、HTML文档、图像、样式表以及其它WEB内容的集合。构成 应用程序的组件必须被打包在一起进行传输和部署。J2EE应 用程序中打包后的组件被存储在一个特定类型的JAR文件中, 这个JAR文件被称为企业应用程序归档或EAR(Enterprise Archive)。同时J2EE应用程序还需要一些关于各个不同模块如 何关联以及部署环境的信息,这些信息被记录在一些被称为部 署描述符(DD)的XML文件里。图8显示了一个EAR文件的结 构。
图8 EAR的结构
部署描述文件web.xml是一个XML文件,包括如下内容: ServletContext初始化参数: Servlet/JSP定义;MIME类型映射;错误处理页面;Session配置;Servlet/JSP映射;首页文件列表;安全约束。
web应用部署描述文件web.xml应该放入主web应用目录 的WEB-INF子目录中,可以用来初始化Servlet、指定MIME(Mul-tipurpose Internet Mail Extensions)类型、指定J2EE资源等等。参考文献
[1]梅绍祖、李伊松、鞠颂东,电子商务与物流,人民邮电出版社,2001·8· [2] Marci Frohock Garcia,Jamie Reding,EdWard Whalen,Steve Adrien Deluca 著,孙岩、黄波、张宁译,SQLServer 2000系统管理员宝典,北京:清华 大学出版社,2001·7·
[3]视崇隽、刘民、吴澄,“供应链中车辆路径问题的研究进展及前景”, 《计算机集成系统-CIMS》,2001,Vol.7(11):1~6·(上接第4页)4 术语权重重构 获得查询q的TAGq查询集后,重新调整术语权重,构造新 的向量Q′。其基本思想是:给定一个查询方案,根据节点的路 径度,强化(strengthen)叶子节点权重,弱化(weaken)图TAGq中中 间节点的权重,从而优化用户查询的目的。
TWA(TermWeight Adjustment Algorithm,术语权重调整)算法: 输入:(1)术语关联图TAGq查询方案GQT;(2)查询术语/权重集合Q={(q1,w1),„,(qn,wn)}。输出:查询术语/权重集合Q′。TWA算法: 1)构造空的术语/权重集合Q′=Φ。2)计算每个节点的路径度: a)令GQT中所有节点的路径度为0;b)for GQT中每条起始路径P=(t1,„,tk)do{ for i=1,2,...,k do path degree(ti)=path degree(ti)+1;} 3)对每个以t为叶子节点的起始路径P=(t1,„,tk,tk=t): a)修改t权重:Wt=Wt+Wti*l/path degree(ti)(1≤i 例子3 设例子2对应的查询术语/初始权重见表1。通过 权重调整算法(令l=0.1),得到表1中不同查询方案的术语权 重。不同的查询方案使得术语A1,m1和A2,1的最终权重不同。表1 查询术语/权重优化前后对照表 A1A2A3AnA1,m1A2,1A3,k3An,mnA1,1,1,k1 初始权重0·200 0·200 0·200 0·200 0·400 0·400 0·400 0·400 0·600 GQp1路径度1 1 1 1 2 0 1 1 3 权重0·197 0·197 0·180 0·190 0·387 0·000 0·410 0·410 0·629 GQp2路径度1 1 1 1 1 1 1 1 3 权重0·197 0·197 0·180 0·190 0·393 0·393 0·410 0·410 0·623 5 结 论 本文引入术语关联网络TAN概念,检查查询术语的可达关 系,建立术语关联图TAG,构成新的查询,接着利用术语权重调 整算法计算新的术语权重,形成基于术语关联的查询。本文贡 献之处在于利用TAN发现查询中存在的术语关联,并利用术语 关联重新计算术语权重,从而突出用户查询目的。 本文只研究了术语之间的isa联系来体现概念之间的泛化/ 细化联系。由于术语之间存在多种关联,各种关联的性质存在 较大差异。以后的研究内容主要分析可达术语之间的关联种类 和距离,对于不同的可达关联予以不同的考虑,如予以不同的权 重和伸缩因子等。参考文献 [1] Panagiotis G.Ipeirotis,Luis Gravano,Mehran Sahami.Automatic classifica-tion of text database through query probing,WebDB 2000.[2] Luis Gravano,Hector Garcia-Molina,Anthony Tomasic,GLOSS:Text-Source Discovery over the Internet,Vol.24,No.2,June 1999,ACMTransactions on Database Systems.[3] Luis Gravano,Querying Multiple Document Collections across the Internet, 1997,PHD Thesis.[4] Ricardo Baeza-Yates,Berthier Ribeiro-Neto.Modern Information Retrieval, 1999,ACMPress.[5] Weiyi Meng,King-lup Liu,Clement Yu,et al,Estimating the Usefulness of Search Engines,International Conference of Data Engineering,1999.[6] J.Kleinberg.Authoritative Sources in a hyperlinked environment.In Proceed-ing of the 9thAnnual ACM-SIAM symposium on Discrete Algorithms,pp.668 ~677,January 1998.第3期 纪寿文等:基于J2EE的网上购物配送管理系统设计31 课程实践报告 课程名称:软件工程实践II 项目名称:网上购物系统 专业班级: 姓 名: 学 号: 指导教师: 成绩:______ 报告日期:2014年12月9日 网上购物管理系统 摘要 随着计算机技术在各行各业日益广泛和深入的应用,网络的概念早已深入人心。网络在各行各页的发展战略占据了重要的位置,成为了商家不可分割的一部分。网络已经成为了商家展示自己的另一个舞台。商家建立网站,通过网站可以实现,浏览商品,网上购物,结账 本系统实现了网上购物商城的基本功能和购物流程。主要模块有:商品查询、商品管理、商品显示、购物车、订单管理、用户管理等功能。其开发主要包括:数据库的建立,前台Web页面设计,后台管理。本系统采用MySql数据库和Tomcat服务器实现,并且使用HTML、JSP等技术来编辑网页,并运用Hibernate技术把数据库和动态网页相关联。 关键字 关键词:网上商场,购物车,结账,Tomcat,Sevlet,JSP,MySql数据库 目录 摘要..............................................................................................................................................2 关键字..........................................................................................................................................2 1需求分析.......................................................................................................................................4 1.1背景.........................................................................................................................................4 1.2可行性分析.............................................................................................................................4 1.3对性能的规定.........................................................................................................................4 1.3.1时间特性要求..................................................................................................................4 1.3.2灵活性..............................................................................................................................5 1.4其他专门要求.........................................................................................................................5 1.5运行环境的规定.....................................................................................................................5 1.6设备.........................................................................................................................................5 1.7支持软件.................................................................................................................................5 2功能分析.......................................................................................................................................6 2.1功能分析的目的.....................................................................................................................6 2.2业务描述.................................................................................................................................6 2.3用例图.....................................................................................................................................8 2.4 状态图..................................................................................................................................10 3模块设计.....................................................................................................................................10 3.1系统功能模块.......................................................................................................................10 3.2模块分析...............................................................................................................................11 4数据库分析与设计.....................................................................................................................18 4.1数据库分析...........................................................................................................................18 4.2系统整体ER图的设计........................................................................................................19 4.3数据库设计...........................................................................................................................20 5编码,实现及测试.....................................................................................................................22 5.1各功能源代码.......................................................................................................................22 6 结论............................................................................................................................................29 6.1系统优点...............................................................................................................................29 6.2系统缺点...............................................................................................................................29 6.3未来发展...............................................................................................................................29 7实验小结.....................................................................................................................................30 7.1 孙佳伟实验小结..................................................................................错误!未定义书签。7.2 喻道斌实验小结..................................................................................错误!未定义书签。7.3 金龙实验小结......................................................................................错误!未定义书签。1需求分析 1.1背景 在发达国家,电子商务的发展非常迅速,通过Internet进行交易己成为一种潮流。基于电子商务所连带出的商品交易方案、电子结账方案和信息安全方案等,已逐步成为国际信息技术市场竞争的焦点。随着电子商务的日益发展,产生了网上购物、网络广告等新兴信息产业,从侧面反应了电子商务正在对社会和经济产生着深刻的影响。 在我国,网上购物从无到有也不过短短几年时间。但是就在这几年时间,网络购物已经深入千家万户,普通的购物已经不能满足人们的消费。网上购物以其诸多优势,获得人们的青睐。它以其方便,快捷,高效,高选择性等优点,迅速得到了广大网友的喜爱与青睐,现在的网上购物已经非常普及。本系统设计就是为了满足广大网友的这些需求,改变传统的交易模式,通过互联网完成查看商品,购买商品等完成网上交易。方便消费者,同时对商家的商品信息进行管理,便于商家的商品数据分析。截止2013年1月中国有网上购物的用户将近5000万人,这足以证明网上购物具有良好的群众基础,网上购物方式日趋被大家所接受。因此我们小组致力于做一个基于B/S架构的网上购物管理系统,使广大用户可以享受网上购物的种种优势。 1.2可行性分析 随着计算机的普及,Internet的发展,网购已经成为人们生活消费中一大部分。一个网上购物系统可以为消费者提供软件条件,使其可以更加快捷,方便,实惠的选择商品,而商家也可以更好的管理商品,节约成本,两全其美。所以构建一个网上购物商城在运行上是完全可行的。 此次开发使用JSP作为开发语言,采用Servlet技术,Tomcat7.0座位Web服务器,采用MySql作为数据库,这几种技术及工具的方便,快捷,免费大大的缩短了开发的时间,减少了开发的成本。并且使得开发更方便安全,更利于后期的维护。网上购物服务系统给人们带来了方便,成为一种全新的商务模式。因此,不用出门就可以在家购物的新时尚已经到来,构建一个网上购物服务系统在经济上是完全可行的。 综上所述:开发本系统是完全可行的。 1.3对性能的规定 1.3.1时间特性要求 对于商品基本信息,订单信息管理的增加删除修改必须是实时响应,与客户端的交互响应时间不超过5s 1.3.2灵活性 操作方式的变化,可以直接从UI或从数据库输入行,对初始行进行增加,删除,删除等操作。 1.4其他专门要求 文字描述必须准确,精炼,通俗易懂。安全性要得以保障,可移植性要高,为了适应不同系统,程序吞吐量必须要大,否则不能动态适应购物网站的需要。 1.5运行环境的规定 1.6设备 开发环境: 操作系统:windows 7 硬件环境: 客户终端:pc机; 服务器:Tomcat 编译环境:Jdk 1.6 1.7支持软件 操作系统:** 开发软件:MyEclipse 数据库: Mysql 2功能分析 2.1功能分析的目的 从用户需求出发,对于网上购物系统做细致全面的功能分析,准确地定义网上购物系统的目标,确定系统必须做什么,再用UML建模,并以Rational Rose工具画出功能模型,以此形式分析确定此网上购物系统的功能。 2.2业务描述 用户进入网站后,可以根据价格高低确定是否进行筛选,不筛选则进入所有的商品浏览界面,筛选则得出筛选后的浏览界面。接着可以点击商品加入购物车,可以自己选择加入的数量。加入购物车以后可以查看购物车,在购物策划模块中可以选择添加或删除购物车商品,接着用户可以自行判断是否继续购物,如果继续购物则返回首页,不购物则进行结账。结账之后可以查看订单界面,这里有详细的订单信息。,否则注销退出。 下图为网上购物系统的业务流程图。 开始用户进入网站按照价格高低进行筛选筛选后的浏览界面浏览商品加入购物车查看购物车添加或删除购物车商品继续购物结账查看订单订单界面注销退出结束 图 1-1 系统业务流程图 2.3用例图 用例图 浏览商品用例,可以实现浏览商品 搜索商品用例,可以根据商品的价格进行筛选查询商品。 管理商品详情用例,可以实现对商品中所有信息的浏览。 加入购物车用例,是用户才有的功能,能在浏览商品后把商品加入购物车 管理购物车用例,在加入购物车后扩展的功能,对于购物车内的商品可以增加删除 购买商品用例,用户可以对于商品显示页面的商品进行购买 管理自身订单,用户可以对自身的订单进行搜索,删除功能。 清空购物车用例,用户对购物车中所有商品进行清空 浏览曾经的商品(历史记录)用例,用户可以在这里浏览曾经使用的商品 结账模块用例,用户可以在这里进行结账功能。 < 图1-2主用例图 删除商品用户浏览购物车清空购物车继续购物结账 图 1-3 购物车用例图 结账用户事务管理查看订单信息 图 1-4 结账用例图 2.4 状态图 对于系统进行状态细节分析如下 a)b)c)d)e)f)g)h)用户首页输入网址进入首页界面 用户浏览商品进入商品展示界面 浏览完之后可选择喜欢的商品进入购物车界面 在购物车中可以添加或删除商品进入更改商品界面 更改接受后确定是否继续购物,若继续择返回商品展示界面 若不继续购物则进入结账界面 在结账界面中进行查看订单,进入订单确认状态 订单确认无误后,则系统提交,之后用户可以注销退出。 按价格筛选用户输入网址首页浏览商品商品展示界面加入购物车购物车界面结账界面发出结账请求查看订单注销继续购物确定是否购物添加或删除商品订单确认状态退出 3模块设计 3.1系统功能模块 功能模块图: 系统总体分为前台展示模块,购物车模块,结账模块。 前台展示模块包括:浏览商品模块,筛选商品模块,商品详情模块,历史纪录模块。购物车模块包括:购物车展示模块,删除商品模块,清空购物车模块,继续购物模块。 结账模块包括:订单确认模块,提交订单模块,事务处理模块。 网上购物管理系统前台展示模块购物车模块结账模块浏览商品模块筛选商品模块商品详情模块历史纪录模块购物车展示模块删除商品模块清空购物车模块继续购物模块订单确认模块提交订单模块事务处理模块 图3-1 功能模块图 3.2模块分析 1:商品展示模块 这是网站的主页面,用户不登陆也可以进入该页面,登陆成功后,页面会显示用户的信息。此页面主要是显示一些主要商品的图片、名称、价格等信息,用户可以输入商品名称,种类等进行搜索,也可以直接点击商品查看商品细节信息。 图 3-2 商品展示模块 在主界面中可以根据价格的高低排序 2:商品详情模块 当你点击一个商品的链接,可以进入商品的详情页面,这里会相识一个商品的所有具体信息,可以看到书名,作者,价格,出版日期 图3-3 商品详情模块 3:购物车模块 用户喜欢的商品可以选择放进购物车里,可以在购物车里产看用户选择的商品的名称价格以及购物车商品的总价,用户可以对购物车中的商品进行操作,修改购买数量,删除商品,清空购物车,结账等。 图3-3 购物车前台模块 图3-4购物车展示界面 清空购物车 删除购物车中的某教材 图3-5清空购物车界面 图3-6删除购物车某教材 4:回顾商品模块 当您想看曾经浏览过的商品时,可以点击查看浏览的历史记录,根据最近浏览的显示记录排序 5:结账模块 图3-7 回顾商品模块 在购物车进行结算以后,会跳转至结账界面,系统会显示当前的信用卡姓名,信用卡帐号,当您提交时就会结算成功,并且通过事务管理防止重复提交 图3-8 结账模块界面 余额不足时提示 图3-8 余额不足界面 6:订单页面模块 在购物车进行结算以后,就会生成订单,订单会显示订单号、收货人、地址、电话等信息。点击查看详情就可以进入订单详情页面 图 3-9 订单页面模块 4数据库分析与设计 4.1数据库分析 对于以上模块的划分以及分析我们建立网上购物管理系统数据库,建了5个表,分别是帐户表(account),书籍信息表(mybooks),订单表(trade),订单项目表(tradeItem),用户信息管理(usersInfo),各表的实现的功能在上述模块设计中已经指出,此刻不再赘述。 帐户表(account)中的各列分别为:帐户编号(accounted)主码,帐户余额balance 书籍信息表(mybooks)中的各列分别为:书籍(Id)主码,作者(Author),标题(Title),价格(Price),出版日期(Publishingdate),车辆类型(Salesamount),车辆规格(Storenumber),单价预算(Remark)订单表(trade)中的各列分别为:订单编号(tradeid)主码,用户编号(userid)外码,订单日期(tradetime)订单项目表(tradeItem)中的各列分别为:订单编号(itemid)主码,书籍编号(bookid)外码,(quantity),使用年限(tradeid)用户信息管理(usersInfo)中的各列分别为:用户编号(userid),用户名(username),帐户编号(accountid) 4.2系统整体ER图的设计 用户编号订单编号帐户编号帐户余额订单表订单日期帐户表用户名用户编号帐户编号生成拥有用户信息管理拥有购买订单项目表书籍信息表订单编号书籍价格作者出版日期标题书籍编号使用年限 图4-1 系统整体ER图设计 4.3数据库设计 帐户表(account)设计 书籍信息表(mybooks)设计 图4-2帐户表(account)设计 订单表(trade)设计 图4-3书籍信息表(mybooks)设计 图 4-4订单表(trade)设计 订单项目表(tradeItem)设计 用户信息表(userinfo)设计 图4-5订单项目表(tradeItem)设计 图4-6 用户信息表(userinfo)设计 5编码,实现及测试 5.1各功能源代码 5.1.1 分页的实现 public List String sql=null;System.out.println(“ method------------>”+method);if(method.equals(“price”)){ sql=“SELECT id, author, title, price, publishingDate, ” + } elseif(method.equals(“salesamount”)){ } elseif(method.equals(“publishingdate”)){ } else{ } returngetForList(sql, sql=“SELECT id, author, title, price, publishingDate, ” + “salesAmount, storeNumber, remark FROM mybooks ” + “WHERE price >= ? AND price <= ?order by price ”+ “LIMIT ?, ?”;sql=“SELECT id, author, title, price, publishingDate, ” + “salesAmount, storeNumber, remark FROM mybooks ” + “WHERE price >= ? AND price <= ?order by publishingdate ”+ “LIMIT ?, ?”;sql=“SELECT id, author, title, price, publishingDate, ” + “salesAmount, storeNumber, remark FROM mybooks ” + “WHERE price >= ? AND price <= ?order by salesamount ”+ “LIMIT ?, ?”; “salesAmount, storeNumber, remark FROM mybooks ” + “WHERE price >= ? AND price <= ?order by price desc ”+ “LIMIT ?, ?”;cb.getMinPrice(),cb.getMaxPrice(),(cb.getPageNo()-1)*pageSize,pageSize);5.1.2:运用ajax技术实现页面的局部刷新 //ajax修改单个商品的数量 //1.获取页面中所有的text,并为其添加onclick事件 $(“:text”).change(function(){ varquantityVal = $.trim(this.value);varreg=/^d+$/g;varquantity=-1; varflag=false;if(reg.test(quantityVal)){ } if(!flag){ alert('输入的数量不合法');$(this).val($(this).attr(“class”));return;} var$tr = $(this).parent().parent();vartitle = $.trim($tr.find(“td:first”).text());if(quantity==0){ } varflag = confirm(“确定要修改” + title + “的数量吗?”);if(!flag){ $(this).val($(this).attr(“class”));} //2.请求地址为: bookServlet varurl = “Books”; //3.请求参数为: method:updateItemQuantity, id:name属性值, varidVal = $.trim(this.name);varargs = {“method”:“updateItemQuantity”, “id”:idVal,//4.在updateItemQuantity方法中, 获取quanity, id, 再获取购物车对象, //5.传回 JSON 数据: bookNumber:xx, totalMoney return; varflag2=confirm(“确定要删除”+title+“吗?”);if(flag2){ varserializeVal = $(“:hidden”).serialize();varhref=$tr.find(“td:last”).find(“a”).attr(“href”);window.location.href=href+ “&” + serializeVal;;return;} quantity=parseInt(quantityVal);if(quantity>=0)flag=true; quantity:val, time:new Date() “quantity”:quantityVal, “time”:newDate()};调用 service 的方法做修改 //6.更新当前页面的bookNumber和totalMoney $.post(url, args, function(data){ varbookNumber = data.bookNumber;vartotalMoney = data.totalMoney;$(“#totalMoney”).text(“总金额: ¥” + totalMoney);$(“#bookNumber”).text(“您的购物车中共有” + bookNumber + “本书”);},“JSON”);});5.1.3:运用ThreadLocal类实现数据库的连接与当前线程绑定,实现结账的事务操作 publicvoiddoFilter(ServletRequest request, ServletResponse response, FilterChain chain)throwsIOException, ServletException { Connection connection = null;try { connection = DBUtils.getConnection(); connection.setAutoCommit(false); ConnectionContext.getInstance().bind(connection); chain.doFilter(request, response); connection.commit();e.printStackTrace();try { } HttpServletResponseresp =(HttpServletResponse)response;HttpServletRequestreq =(HttpServletRequest)request;resp.sendRedirect(req.getContextPath()+ “/error-1.jsp”);connection.rollback();e1.printStackTrace();} catch(SQLException e1){ } catch(Exception e){ } } ConnectionContext.getInstance().remove();DBUtils.Release(connection); } finally{ 5.1.4:使用过滤器实现页面的编码 publicvoiddoFilter(ServletRequest request, ServletResponse response, FilterChain chain)throwsIOException, ServletException { } String encoding = request.setCharacterEncoding(encoding);chain.doFilter(request, response);filterConfig.getServletContext().getInitParameter(“encoding”);5.1.5:数据库底层操作,运用泛型技术和反射技术 public class BaseDao private Class publicBaseDao(){ } @Override public long insert(String sql, Object...args){ long id=0;Connection conn=ConnectionContext.getInstance().get();try { PreparedStatement for(inti=0;i prepareStatement.setObject(i+1, args[i]);clazz = ReflectionUtils.getSuperGenericType(getClass());System.out.println(clazz); privateQueryRunnerqueryRunner=new QueryRunner();prepareStatement=conn.prepareStatement(sql,java.sql.Statement.RETURN_GENERATED_KEYS); } } { } // TODO Auto-generated catch block e.printStackTrace();id=resultSet.getLong(1);} catch(SQLException e){ return id;@Override public void update(String sql, Object...args){ } @Override public T query(String sql, Object...args){ } @SuppressWarnings(“unchecked”)@Override public Connection conn=ConnectionContext.getInstance().get();try { } return(V)queryRunner.query(conn, sql, new ScalarHandler(), args);// TODO Auto-generated catch block e.printStackTrace();} catch(SQLException e){ Connection conn=ConnectionContext.getInstance().get();try { } return null;return(T)queryRunner.query(conn, sql, new BeanHandler } queryRunner.update(conn, sql, args);// TODO Auto-generated catch block e.printStackTrace();} catch(SQLException e){ } } return null;@Override public void batch(String sql, Object[]...args){ } @Override public List } Connection conn=ConnectionContext.getInstance().get();try { } return null;System.out.println(“sql-----------”+sql);returnqueryRunner.query(conn, sql, new BeanListHandler e.printStackTrace();Connection conn=ConnectionContext.getInstance().get();try { } queryRunner.batch(conn, sql, args);e.printStackTrace();} catch(SQLException e){ } catch(SQLException e){ 5.1.6:使用session防止表单重复提交 publicvoidcash(HttpServletRequest request, HttpServletResponse response) HttpSession session=request.getSession(); Thread.sleep(5000);String username=request.getParameter(“username”);String accountId=request.getParameter(“accountId”);StringBuffer errors=validateFormField(username, accountId);if(errors.toString().equals(“")){ errors=validateUser(username, accountId);if(errors.toString().equals(”“)){ throwsServletException, IOException, InterruptedException { ; } } errors=validateBookStoreNumber(request);if(errors.toString().equals(”“)){ } errors=validateBalance(request,accountId);String code=(String)session.getAttribute(”code“);System.out.println(code+”---------“);String codeRe=request.getParameter(”checkCode“);if(!code.equals(codeRe)){ } if(!errors.toString().equals(”“)){ request.setAttribute(”errors“, errors);errors.append(”验证码输入不正确“);request.getRequestDispatcher(”/WEB-INF/pages/cash.jsp“).forward(request,service.cash(BookStoreWebUtils.getShopCart(request),username,accountId) request.getRequestDispatcher(”/WEB-INF/pages/error.jsp“).forward(reques } } } if(valS==null){ request.setAttribute(”username“, username);request.getRequestDispatcher(”/success.jsp“).forward(request, session.removeAttribute(”date“);} String val=request.getParameter(”date“); String valS=(String)session.getAttribute(”date“); if(valS!=null&&valS.equals(val)){ return;response);response);t, response);5.1.7:使用数据库连接池 root 123456 jdbc:mysql:///bookstore com.mysql.jdbc.Driver 2 5 5 10 20 5 结论 6.1系统优点 系统实现了网上购物商城的基本功能,可以很好的完成网上购物的一系列流程。而且方便快捷,高效。页面也很美观,大方。对整个系统的框架设计合理,大大提升了系统的整体性与耦合性。也方便了后期的进一步开发与维护。 6.2系统缺点 系统缺乏创新性,没有自己过多的新增功能,没有特别突出的特点。可以增加一些功能,来丰富系统,提升系统的实用性。例如增加商品的销量排行榜,方便用户查看畅销商品。增加商品的交易评价,方便用户判断是否购买此商品。 6.3未来发展 这里指为了使本系统更好的适应环境的变化,有必要进行适应性维护。一方面由于计算机技术的飞速发展,原来的系统不能适应新的软硬件,另一方面,应用对象也在不断的发生变化,将导致系统不能适应新的应用环境,因此,有必要对系统进行调整,以保证系统时时都能满足用户要求。 7实验小结 电子商务网站网上购物系统设计 摘要:伴随互联网的广泛应用和电子商务的迅速发展,网上购物系统渐渐走入人们的视野。本文通过对网上购物系统的基本流程及功能进行说明,提出了该系统的设计方法。因此本人结合网络购物系统的要求,对 Access 数据库管理系统、ASP 设计平台,ASP数据库技术进行了较深入的学习和应用,主要完成对网络购物系统的需求分析、功能模块划分、数据库模式分析 关键词:电子商务网站 网上购物系统 系统设计 在二十一世纪的现在,电子商务已经越来越流行,在网上购物已经是一件很平常的事情。随着互联网宽带和技术应用的成熟,以及物流和支付系统的完善,可以预见,随着时间流逝,网上购物将成为互联网普及应用的主流,必将持续影响着千家万户的生活和经济行为,并最终成为社会商业活动的重要形式。面临众多的网上购物系统,如何根据技术现状和客户的需求设计一个合理的网上购物系统显得尤为重要,建立和开发这样的电子商务平台不但可以扩大商家的规模和市场影响力,而且可以减少企业的经营成本,提高工作效率。 一.系统开发工具 系统的定位是一个电子商务站点,作为面向 Internet Web 上的应用,传统的客户端/服务端架构很明显不适应,浏览器/服务器架构是必然的选择。根据当前 Internet 现状,确定系统运行在微软公司的 Windows平台上,使用 IIS 信息服务起作为 Web 服务器,前台使用流行的网页制作工具 Dreamweaver,后台的数据库则用 Access,用 Asp 动态网页技术完成动态交互功能。 二.网上购物系统基本操作流程分析 用户在浏览网站时首先看到的就是网站首页。在首页用户可以快速浏览最新商品,了解热门商品和推荐商品,也可以搜索已知的商品查看具体信息。首页聚 I 集了大量的信息,除了商品以外,还有站内公告信息和站内新闻信息,此时用户已经对商城有了一定的了解。用户如果想要购买商品时必须注册成会员,再用户查看完商品的详细信息后,可以把自己想要购买的商品放入购物车当中,也可以随时修改、删除购物车里的商品,如果用户对购物车里的商品都很满意,也可以去收银台结账,下订单。这时相关的程序模块会将用户所提交的所有信息都记录在数据库里以便整个商城的管理人员可以核对信息并在收款后准备发货,发货成功并且用户确认收到货物时整个购物过程便结束了。在电子商城后台管理方面还需要添加、修改、删除商品,同时要对商品进行分类,包括用户信息的管理、站内公告的设置、站内新闻的发布和订单的处理等都需要电子商城的管理人员来操作。工作人员也会根据用户的订单随时调整库存、进货、发货等。 所以,由上可知,网上商城应分两个部分:第一部分是面向用户系统前台的部分包括:顾客在线注册、选择商品、进行购物、付款等操作;第二部分是商城后台系统管理部分,这部分的内容包括:产品的添加、删除、查询、订单的管理、操作员的管理、注册用户的管理等。 系统主要涉及普通用户和管理员两部分人员,普通用户通过简单的注册成为会员后可以对商品进行浏览、加入购物车、下达订单等操作,管理员用户可以对商品进行添加与维护、处理订单、管理用户、管理评论等操作。 三.网上购物系统详细设计 (一)系统前台设计 注册 当用户第一次进入购物网站时,如果想在网站上购买东西,就需要注册成网站的会员,以便将自己想要的商品放入购物车。用户注册必须填写一些基本信息,主要包括用户名、密码、真实姓名、联系电话和详细地址等。 登录管理 用户也只有登录后才可以进行购买和下订单等操作。当用户在完成注册以后购买商品的时候系统会先检查一下该用户有没有登录,若登录过了则可以直接对自己选购的商品下订单,否则返同登录窗口。登录后,可填写修改详细个人信息及收货人信息,同时可修改密码、查询、查看订单信息、修改订单(已经过管理员处理的商品除外)。 II 寻找商品 选择产品通过四种方式:通过类别自行浏览;通过浏览推荐商品选择;通过热卖排行榜选择商品 ;通过搜索条件搜索。产品放到购物车后,购物车可连续添加商品,一次性结账付款购买; 管理购物车 顾客选择完商品后可进入购物车页面,查看自己要购买 的商 品,亦可修改某一商品数量、取消购买某商品或清空整个购物车等。 用户订单模块 顾客确定购物车想买的商品后提交订单如顾客已填写收货人信息则页面实时显示订单信息。如尚未填写则显示相应表单请其填写,顾客提交订单后可随时在登录网上商城后查询该订单,并可对尚未处理的订单进行取消、修改等操作。顾客在订单被销售方确认后,选择付款方式,并付款给销售方,点击“确定已付款”,这样系统就会将默认的“未付款”更改为”已付款”,然后才可以收到货。 (二)系统后台管理设计 管理人员部分 该部分的用户有一个超级管理员以及若干个普通管理员。超级管理员拥有最高权限可访问所有订单,浏览、修改普通管理员和会员的资料;普通管理员分两种,一种是销售管理员:主要负责订单管理,可浏览、修改订单状态,也可浏览会员信息;另一种是产品管理员:主要负责界面管理,可增删商品和公告及广告等操作。 用户订单管理 订单管理主要是指管理员对用户已付款的订单做一个简单的管理查看,这样很方便杳看到是哪一位用购买了哪一件,同时显示该用户购买了几件该商品。系统管理员会根据这些信息给已付款的用户配送相应的商品。若订单的状态在一定时限后仍没有发生变化(“订单关闭”状态除外),系统自动提醒管理员,订单状态发生变化,系统自动发E—mail给顾客,(“无效订单”、“订单关闭”状态除外)。 管理商品 展示并出售商品是在线网店的真正目的,这样就需要管理员在后台可以添加、删除商品并可以对商品信息加以修改。 预警功能 为更好的使用,系统应该引入预警功能,为商品数量设置下限,达到设置的下限,管理员应提示用户进货;订单应设置处理时限,超过时限提示管理员操作。 III 用户评论管理 用户评论主要是指所有参与网购的会员都可以对本商城中的每一件商品留言评论,写下自己对于商品的看法,供以后买的会员参考。为避免商家遭受不公平待遇,管理员可以将恶意留言内容加以删除,以确保广大用户和谐的购物。 (三)数据库设计 一个结构良好的数据库可以很好地实现系统的查询和管理,并且能够极大地提高系统的运行效率,所以数据库的设计也是本系统非常重要的设计环节之一。 分析购物系统的特点可以发现2类信息存储在数据库中。一个是用户信息表、商品信息表及评论信息表——包括用户注册信息、商品信息、评论内容等。 订单表——这一类表主要是存储用户订单。 中国电子商务发展到今天经历了低潮、曲折等一系列的变化,但困难并没有抹杀大家对其的热忱。电子商务将成为 21 世纪的网络发展的主流,电子商务在未来的应用将愈来愈广。目前国内企业正纷纷加入到阿里巴巴等一系列大型电子商务网站中,通过网络进行 B2B(企业对企业)的网上交易之后,也充分认识到网络交易将成为未来商品交易的重要组成部分,在建立企业宣传网络的同时,也 逐步扩大企业自身的网络销售渠道,建立起自己的电子商务网站,完成从 B2B 到 B2C(企业到个人)同时进行网络交易的过渡,大大提高了企业生产效益。企业信息化水平已成为企业参与市场竞争的关键,网上交易作为基本的电子商务功能之一,有着强大的优势。网上交易市场是企业间电子商务所需要的电子化和网络化的商务平台。通过网上交易市场,可以改变传统贸易中的一对一或一对多的模式,变成了多对多模式,并创造众多买卖商家聚集的在线交易空间。买卖双方不仅可以寻找到更多的贸易伙伴,增加更多的商业机会,还能够享受更多的方便和标准化的商务服务,获得一个良好的商务环境 参考资料: [1]白以恩.计算机网络基础及应用[M].哈尔滨:哈尔滨工业大学出版社,2000.IV [2]刘锦绣.电子商务的实现网上购物系统的分析与研究[期刊论文]——《中国电子商务》2012(6) [3]王健南.ASP 数据库管理项目方案精解.航空工业出版社,2006。 [4] 许多顶 电子商务的发展现状与展望[期刊论文]-上海应用技术学院学报 2001(02)[5].辛峰 基于JSP的网上购物系统设计与实现[期刊论文]-哈尔滨职业技术学院学报 2010(1) V 目录 第一章 系统设计概述 1 1.1引言 1 1.1.1系统开发的背景 1 1.1.2系统开发的目的与意义 1 第二章 可行性研究与需求分析 3 2.1可行性研究 3 2.1.1技术可行性 3 2.1.2经济可行性 3 2.1.3运行可行性 3 2.1.4法律可行性 3 2.2需求分析 3 2.2.1系统目的 3 2.2.2数据流图 4 2.2.3数据字典 6 2.2.4功能需求 8 2.2.5性能要求 8 第三章 项目设计的基本原理和采用的主要方法与技术 9 3.1项目设计的基本原理 9 3.2项目设计采用的主要方法与技术 9 第四章 总体设计 12 4.1总体设计原理 12 4.2运行环境 12 4.3系统流程图 12 4.4系统功能模块图 14 4.5系统安全与维护 15 第五章 详细设计 17 5.1程序流程图 17 5.2数据库设计 19 5.2.1概念结构设计 20 5.2.2逻辑结构设计 23 第六章 编码实现与测试用例设计 28 6.1登录界面 28 6.2管理界面 30 6.3网站主界面 33 6.4订单查询界面 34 第七章 测试用例设计、测试与运行记录 37 7.1测试目的 37 7.2 测试目标 37 7.3测试方法 37 7.4测试项目 37 7.5测试界面 37 7.5.1管理员登录测试 37 7.5.2管理商品信息测试 38 7.5.3管理订单信息测试 39 7.5.4用户管理测试 40 7.5.5管理员密码修改测试 40 7.5.6用户登录测试 41 7.5.7用户个人管理测试 42 7.5.8添加商品信息测试 42 总结 44 参考文献 47 本系统必须具备以下几个功能如下: 1.顾客登录及身份验证功能:接受游客的基本信息。 2.顾客在线购物功能:顾客浏览商品信息,进行选购,提交订单后进行交易。3.管理员功能:管理员对整个系统进行管理。 4.购物车功能:在顾客提交订单之前,一直存放顾客选购得商品 一、系统流程分析 (1)普通用户分为注册会员用户和非会员用户。进入网站首页,会员用户登录成功后具有查看商品信息并订购商品、查看订购信息、查看公告信息、修改个人信息等权限;非会员用户不用登录,只能查看商品信息、公告信息,不能订购商品.只有注册成为会员用户并成功登录后。方可订购商品。 (2)部门管理员只可以对本部门销售的商品的分类、商品品牌和商品信息进行管理,也可对自己的个人信息进行管理维护。 (3)总管理员可以对商城销售的商品大类、各部门的管理员、公告信息和客户订单进行管理.并可以修改个人信息和密码。 图1-1 系统流程示意图 二、系统数据库设计 本系统客观存在的实体有:管理员(gly)、注册会员用户user)、商品种类(spzl)、商品子类(splx)、商品品牌(ppxx)、商品(sp)、商城公告(board)。共7个实体,图2-1 网上购物全局E-R图 三、逻辑结构设计 管理员:包括管理员编号、注册名、密码、真实姓名、地址、电话、E-mail、其他。当管理员编号为“0000”时,代表系统总管理员,其他编号为对应的部门管理员。注册会员用户信息:包括用户ID、姓名、密码、性别、地址、手 机号、电话、E—mail。 商品种类:包括商品种类编号,商品种类名称。每一个商品种类可以有多个商品子类。商品子类:包括子类编号、子类名称、指标名称I、指标名称 2、指标名称 3、指标名称 4、指标名称5。5个指标名称中分别存 放每一子类商品的5个主要的指标名称。 商品品牌:包括品牌编号、品牌名称、品牌生产商、业务联系 信息。 商品:包括商品编号、商品名称、商品型号、商品指标值 1、商品指标值 2、商品指标值3,商品指标值 4、商品指标值 5、参考销售单价、上市日期、图片、简介。5个商品指标值巾分别存放各商品的具体指标参数值。 商城公告信息:包括公告编号、公告标题、公告内容、发布时阅。 商品销售信息:包括订单编号、用户编号、商品种类编号、商品分类编号、商品品牌编号、商品编号、订购日期、订购数量、实际销售价、用户确认、发货日期、管理员确认。 四、数据库逻辑结构设计 1.公告信息表(题目,内容,时间,编号,提交人) 2.商品类别表(编号,类别,名称,序号,厂家,包装类型,销售价格,进货价格,商品简介,浏览次数,销售数量,相关图片) 3.购物车表(编号,用户名,商品编号,订购时间,订购数量,销售价格,用户确认,订单号,提交时间,管理员确认) 4.用户投诉表(投诉编号,投诉时间,用户名,订单号,投诉内容,处理结果,处理标志)5.用户信息表(用户名,用户密码,用户姓名,性别,地址,电子邮件地址,固定电话,移动电话) 6.管理员表(用户名,密码,用户姓名) 五、模块功能设计 (1)顾客注册,登录模块 顾客可以通过填写注册信息注册成为会员,会员注册,登录需要填写附加码,保证 系统的安全性。会员登录后才能进行购物,购物车的管理与意见反馈,为登录的会员或 未注册的顾客只能检索与浏览商品信息。(2)购物车模块 顾客输入帐号与密码登录后便可以进行购物车的管理,可以查看购物车,将商品添 加到购物车中,也可以删除购物车中的商品,修改购物车中商品的数量,在线下订单及 订单查看。 (3)商品检索,浏览模块,特价商品检索,浏览模块 顾客可以根据不同的商品种类浏览商品信息(如商品名称,商品图片,商品型号,价格,生产厂商,生产日期等),也可以输入关键字进行商品检索。顾客可以根据不同 的商品种类浏览特价商品信息(如商品名称,商品图片,商品型号,价格,生产厂商,生产日期等),也可以输入关键字进行特价商品检索。(4)顾客留言模块 顾客登录成功后,进入反馈信息界面,可以发表自己的意见或建议。(5)后台登录模块 系统管理员输入帐号,密码和附加码可以登录后台界面,登录验证模块根据输入的 帐号密码识别不同角色的管理员,然后进入不同的后台管理模块,账号密码输入错误后 给出错误提示并要求从新输入。(6)订单管理模块 订单管理员登录后,可以根据日期范围,订单完成状态,订单编号等取得订单列表 与查看某订单的详情,也可以修改订单的完成状态及订单中的商品或数量,还可以删除 订单本身及订单中的商品。(7)商品管理模块 商品管理员可以查看商品种类和商品信息,也可以新增,修改,删除商品的种类和 商品本身。 (8)特价商品管理模块 该模块也和商品管理模块一样,商品管理员可以查看特价商品种类和信息,也可以 新增,修改,删除商品的种类和特价商品本身,并且可以将商品列为特价商品以及将特 价商品修改为一般商品(9)会员管理模块 会员管理员登录后,可以根据注册时间范围,会员级别及会员D取得会员列表,然后对某个会员可以进行详细资料的查看,级别调整与删除操作;也可以根据留言时间 范围,回复状态及会员D取得留言列表,然后对某个留言进行内容查看,回复与删除 操作。 (10)系统用户管理模块 系统管理员登录后,可以根据用户列表进行用户详细资料的查看,新增用户,修改 用户与删除用户操作。论文 1. 网上购物系统的开发背景+可行性分析(经济,技术)2. 系统需求 3. 系统设计+系统分析、实现 4. 系统工作流程 5.第二篇:网上购物管理系统
第三篇:电子商务网站网上购物系统设计
第四篇:网上购物系统论文
第五篇:网上购物系统系统分析