《电子商务网站》课程设计报告项目题目电子拍卖平台系统分析与设计学生姓名班级/学号专业\指导教师2011年10月制1、系统概述本系统实现的是一个网上拍卖系统,可以实现在线登录,注册;卖家上货,买家出价竞拍;拍卖商品列表、商品拍卖信息和商品搜索等功能,普通的Internet用户可以通过该系统注册成为会员后可以上传自己拍卖的产品和竞拍卖价的商品。2、网站结构分析与设计2.1目标设计竞拍网站所要实现的功能如下。会员注册:会员注册信息和会员登录验证会员管理:会员资金管理买家信息管理卖家信息管理2.2系统功能分析设计竞拍网共分为三个模块:会员注册模块、会员个人管理模块和商品列表和搜索模块。其功能模块划分如图所示:竟拍网用户帐号会员管理管理员帐户会员资金管理信息管理买家信息管理会员帐户维护拍卖信息维护会员注册会员登录2.3数据库结构设计根据系统功能的设计要求和模块划分,表结构设计如下:User表:存储会员信息NametypelengthdecimalsAllowNullprimaryusrNoint110noyesusrNamevarchar100yesnopassWdvarchar2550yesnoIDchar180yesnomoneydecimal100yesnoinTimetimestamp00yesnoGoodinfo表:存储商品信息NametypelengthdecimalsAllowNullprimarygoodNoint110noyesgoodNamevarchar2550yesnoownervarchar100yesnodetailvarchar1000yesnoSelling表:存储所有卖家及其拍卖商品信息NametypelengthdecimalsAllowNullprimaryusrNoint110noyesgoodNoint110noyespricedecimal100yesnoendTimetimestamp00yesnoBuying表:存储商品交易情况NametypelengthdecimalsAllowNullprimarygoodNoint110noyesusrNoint110noyesbuyingTimetimestamp00noyestempPricedecimal100yesnoendPricedecimal100yesnoendTimetimestamp00yesno2.4数据库需求分析数据项和数据结构如下。会员信息表:自动编号、用户名、密码和身份证号码、资金、日期商品信息表:自动编号、商品名、上传人、商品详情卖家信息表:会员编号、商品编号、商品价格、截止时间商品竞拍成功信息列表:商品名、用户名、竞拍时间、起初价格、最终价格、最成交时间2.5、开发环境开发工具:myeclipse服务器软件:tomcat数据库:MySQL3.网站详细设计.3.1网站流程设计首页(Index生成)Snsell.java(上架)Checklogin.java(登陆)Register.java(注册)Buying.java(竟拍)转向功能买家信息\卖家信息3.2数据库功能设计三个存储过程:Onsell:展示拍卖信息,返回当时拍卖的所有信息;Buyingshow:展示某个商品详细信息Buying:当用户竟拍是执行.3.3JAVA控制层设置POJO包:与每一项功能相对应,设置对象类DAO包:所有连接数据库的代码Servlet:所有前台页面的操作过程.3.4前台设计以JSP为主,辅助以JS的主流技术,实现网页的动态效果和数据的动态接收,这里是项目最困难的地方.4.网站的实施前台\后台\控制分布实施:4.1,初步软件结构实施其中DAO包里全部是与数据库有关的连接数据库模式。POJO包里全部是业务需要的数据结构类。SERVLET包里全部是逻辑控制的控制模式。WEBROOT包下全部是前台页面。4.2数据库的实施1,按设计建立4张需要的表。2,根据功能需要,写好存储过程。4.3前台页面的组织共4个主要页面;Index.jsponsell.jsponbuy.jspregister.jsp其页面内容大部分动态生成,千姿百态。4.4后台功能跟进内部大量逻辑代码,工作量非常之大。5.设计心得通过这次的课程设计,本组成员对电子商务基于B/S结构下的开发,有了十足的了解,在利用MVC模式开发过程中我们对前台显示和后台业务处理由了深入的认识,前台和后台的分工使得业务逻辑清晰,层次结构明了。本项目的核心技术是MVC模型下的B/S结构,其中用到的MVC模型有效的使这个项目的产品做到了结构上的分离,于此同时,对整个开发来说,也起到了分模块,分人员的效果。--什么是MVC?M:Model;V:View;C:Control;MVC结构使得我们条例清楚的架构整个网站,Model作为后台模型,其中包括DAO类(业务逻辑),实体抽象类(POJO);View使用JSP仅仅显示表面结构,保证了整个业务的安全性;Control使用Servlet控制业务流程逻辑。在团队合作方面,这次的课程设计也给了我们很多的启发,首先在前台与后台的衔接方面,要预先规划,其次才是功能的实现.在功能实现方面,我们团队在设计上考虑的比较周到,但是,当开发实现之后,正式的进行逻辑业务上的实现时,却发现无论是当初的业务设计还是数据库的设计及存储过程的设计上都出现了一些考虑不周的情况,比如:在一个业务实施当中需要联系到3到4个表才能解决业务逻辑,这样的业务实施是很不合理的,对数据库方面的要求是不当的,这是前期设计的严重失误;这也是一次教训,告诉我们团队在以后的开发项目中,要对整个业务的逻辑进行深刻的思考以及对整个业务流程进行模拟的运行操作。但是,问题出现后,本小组并没有束手无策,数据库方面的设计者想到了用存储过程来解决问题,使得后台操作人员只需要运用一条语句(存储过程)所对应的Java程序代码就能实现联表操作,利用存储过程的开发也让我们长了见识,学到了知识。在前台方面javascript的开发运用到了JQuery这个框架,这是一个目前国内外市场上相当主流的前台框架,宋冉冉运用其框架使得我们的页面变得生龙活虎,同时也参与了一部分后台业务逻辑设计,使得页面前台对用户的体验有了本质的飞跃,这莫过于组员平时的自学积累,他在这次的设计当中成功的将自学的技术在实训中加以结合,在这次实训中,他也将课本上的知识付之与实践,既巩固了既学知识,又将这些技术提高到了实践的高度,但是和后台设计人员徐嘉骏在前后台数据交换上不能成功的对接(曾经)。说明了2人对除自身所了解的知识外了解不深这也是一个教训。在JSP页面设计中本组成员运用了JSTL-EL技术轻松而有效的使得后台数据顺利的,简单的在JSP页面中动态生成,同时其也进行了整个页面的美工,美工效果得到了本组成员的一致好评,同时制作了一部分的后台业务功能。他在前台美工上不仅使用了传统的CSS样式表,在一些功能上也是用了JS效果,使整个页面的效果得到统一。在开发过程中遇到了很多争议的问题,譬如前后台的联系问题\数据交换问题等,由于开发团队成员中,对个人的任务很了解,对其他成员的技术不甚了解,导致误解.导致前后台数据交换产生了困难,瓶颈,但是,在此期间,团队组长起到了统筹规划,相互协调作用,使得AJAX,MySQL以及Servlet之间的交互困难得以解决。从中,我们体会到:课程设计作为一个团队开发的项目,互相协调,相互合作,统筹规划,目标一致都是相当重要的。虽然,这是一门电子商务的课程设计,但是,我们用到了项目管理的相关知识,使得一项任务用到了多门课程的知识结晶。2011年10月附录2:用户手册用户手册1、用户环境配置:数据库:mysql5.0以上Java:JDK和JRE6.0以上服务器:TOM-CAT7.0以上操作环境:建议使用myeclipse9.02、软件的使用:1,解压压缩包,将WebAppAuctionSys包放在tomcat的webapp目录下,修改根目录(WebAppAuctionSys\WEB-INF\classes\dao)下的db.properties文件,使数据库配置与用户吻合。2,用户建立数据库,执行软件中的uctiondb.sql,得到我们的数据库结构。3,此时启动TOM-CAT,用户可测试网页,在浏览器中输入,当然域名是用户自己定义的。3、软件的编辑1,打开myeclipse9.02,导入软件压缩包下的Auction项目,用户可对本软件进行修改。4、版权声明本软件版权归mark小组所有,本项目可用于交流学习使用,不得用于商业用途,最终解释权归mark小组