jsp网上书店论文-需求分析-详细设计-概要设计等-.doc_第1页
jsp网上书店论文-需求分析-详细设计-概要设计等-.doc_第2页
jsp网上书店论文-需求分析-详细设计-概要设计等-.doc_第3页
jsp网上书店论文-需求分析-详细设计-概要设计等-.doc_第4页
jsp网上书店论文-需求分析-详细设计-概要设计等-.doc_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

上海电力学院Java程序设计实训大作业题目 网上书店系统(前台) 学号 课号 姓名 班级 院系 计信学院 专业 软件工程 2012-6-7目录第一部分 网站需求分析31.1 项目背景31.2 项目可行性分析31.2.1 市场现状分析31.2.2 技术可行性31.3 系统流程图41.3.1 网上书店系统数据流图:41.3.2 购书业务流程图:41.3.3 购物系统前台用况图:51.4 主要功能模块:51.5 前台功能需求分析:6第二部分 系统架构92.1 系统概要设计92.1.1 系统层次结构图92.1.2类图92.2 数据库设计102.2.1 数据库逻辑设计102.2.2 数据库表设计11第三部分 详细设计153.1 前台核心模块介绍153.1.1 购物车的实现153.1.2 按条件模糊查找功能163.1.3 struts2校验规则17第四部分 系统测试与运行18第五部分 系统开发总结与心得体会26参考文献27第一部分 网站需求分析1.1 项目背景 本网站是一个网上书店系统,除了具有一般的网站功能以外,计划开展独创用户交流购书体验和专家指导购书体验,以实用有用为目的,使用户知道同类书籍自己应该选择哪本,或者是自己要学习某部分知识,请教专家应该怎么选择书籍。当然独创的用户体验必须以完善的购书平台为基础,没有好用的购书功能,无法实现网站盈利则网站本身就是失败的。所以在第一阶段我准备把重点放在一个完善的购物平台上面。1.2 项目可行性分析1.2.1 市场现状分析随着Internet的迅速发展,当今电子商务已接被广大的互联网用户所接受,网上书店系统作为其中的一部分也有了迅速的发展。当然,网上书店系统目前主要是以B/S的方式进行经营,通过网上开店的方式向读者出售书本。国内著名的两大书店,当当网与卓越网,他们售书的理念很简单,读者可以自己寻找自己喜爱的书。对于读者来说,无需为寻找一本自己想要的书好奔波于城市的各个角落,无需因为时间问题而错过了新书的首发式,或者因为时间问题而去不了书店,网上书店系统,只需你有一台可以连上互联网的电脑,就可以按照自己的兴趣检索到自己想要的书本。1.2.2 技术可行性技术上的可行性分析主要分析技术条件是否能顺利完成开发工作,硬、软件能否满足开发者的需要等。软件方面:操作系统:winxp/vista/Windows 7等数据库:MySQL 5.0以上版本开发工具:Myeclipse 6.5 使用技术:struts2+hibernate+ jQuery1.3 系统流程图1.3.1 网上书店系统数据流图:网上书店系统顶层数据流图1.3.2 购书业务流程图:1.3.3 购物系统前台用况图:1.4 主要功能模块:1.4.1会员登陆,只有顾客是会员,即进行系统登陆,才能收藏购买书籍,非会员的价格比较贵,而且没有收藏的功能,只有查看,搜索购买的权限。1.4.2 查找书籍,一般要把书籍分类进行分类导航查找。1.4.3 利用查询功能,找到自己需要的商品1.4.4 找到商品后,可以放到购车中,然后在购买。1.4.5 放在购物车中的商品,可以删除不想要的商品。1.4.6 购物确定后,就可以下订单了,下订单前还可以修改所购商品1.4.7 进行个人信息确定1.4.8 评论书籍1.4.9 添加至收藏夹以便以后再买1.5 前台功能需求分析:1.5.1 查询商品功能描述:根据客户输入关键字进行模糊查询查询流程:1、 客户打开网站首页,输入或选择查询条件2、 根据查询条件输出商品列表或输出首页商品1.5.2 推荐商品 功能描述:在首页列出根据书籍点击量大小而排序的推荐书籍关联流程:1、 系统根据当前商品被点击的次数进行从上到下的排序。1.5.3 加入购物车功能描述:将用户选购的商品加入购物车。加入购物车流程:1、用户进入书城,浏览商品后,选购商品,进入购物车。2、系统根据用户选购结果,将用户选购的商品加入购物清单。1.5.4 购物车查询功能描述:列出购物车中的已购商品。购物车查询流程:1、用户进入书城,浏览商品后,选购商品,进入自己的购物车,查询购物清单。2、系统根据用户选购结果,列出用户的已购物清单。1.5.5 购物车中商品删除功能描述:删除购物车中的已购商品。购物车中商品删除流程:1、用户进入书城,浏览商品后,选购商品,进入自己的购物车,查看购物清单,删除相应的商品。2、系统根据用户的请求,删除购物车中相应的商品。1.5.6 支付功能描述:将购物车中的商品进行金额结算。结算流程:1、用户选购好商品,提交购物车中的商品清单。2、系统根据用户的请求,将用户选购的商品进行价格结算。1.5.7 注册功能描述:用户录入会员信息,系统将会员信息注册。成功注册流程:1、用户输入会员信息并提交。2、系统检查会员信息的有效性(用户名是否已经被注册)。3、系统将会员信息录入数据库。1.5.8 登录功能描述:用户输入会员号与密码,经验证后登录系统。登录成功流程:1、用户输入会员号及密码,并提交。2、系统检查会员信息的有效性(用户名是否已经登录或用户名密码是否正确)。3、系统允许用户登录。1.5.9 信息修改功能描述:用户登录后,将注册时的用户信息修改。登录成功流程:1、用户登录系统,修改自己的信息。2、系统检查会员信息的准确性(用户信息是否填错)。3、系统将新的会员信息录入数据库。1.5.10 积分查询功能描述:用户查询和修改自己的基本信息,了解自己当前等级、积分等信息。积分查询流程:1、用户登录系统,查询自己的消费记录和积分。2、系统根据用户的请求,输出积分记录。1.5.11 积分累积功能描述:对用户的消费积分进行累加,便于用户了解自己的积分。积分累计流程:1、用户消费后,根据消费政策,兑换积分,并累加用户的积分。2、系统更新用户积分,并输出给用户,将新的会员积分信息录入数据库。1.5.12会员分级功能描述:将会员分等级,实行不同的优惠政策。会员分级流程:1、根据消费政策,还有会员消费信息,对会员分等级。2、系统修改会员等级。3、系统将新的会员信息录入数据库。1.5.13 生成订单功能描述:生成订单,提交给后台。生成订单流程:1,用户用购物车结算完金额,。2,系统生成订单。1.5.14 订单查询功能描述:查询订单,提供消费记录。订单查询流程:1、用户请求查询自己的订单。2、系统从数据库中提取数据,呈现给用户。1.5.15 添加、查看收藏夹功能描述:将书籍填入收藏夹便于以后购买。收藏夹流程:1、用户可以将添加至个人收藏夹。2、查看时系统从数据库中提取数据,呈现给用户。会员积分、等级以及优惠措施实施图示: 会员积分等级实施图第二部分 系统架构2.1 系统概要设计2.1.1 系统层次结构图2.1.2类图因系统类过多,这里只提供便于理解的实体类图,如下:2.2 数据库设计2.2.1 数据库逻辑设计系统的数据库设计实体关系图(E-R图)参考如下:2.2.2 数据库表设计表名功能说明Customer会员表book书籍表publisher出版社type分类表booktype书籍分类表writer作者表bookwriter书籍作者表discuss书籍评论表shoppinglist订单表listbrif订单明细表clist会员收藏表manager后台管理员表2.2.2.1 表customer表名customer列名数据类型(精度范围)空/非空约束条件说明cname Varchar(8)非空 主键用户名cpwd Varchar(16)UNIQUE密码crname Varchar(8)真实姓名cmobleVarchar(12)手机cphone varchar(12)电话caddrvarchar(20)地址cscore int积分clevel Varchar(10)会员等级补充说明2.2.2.2 表book表名book列名数据类型(精度范围)空/非空约束条件说明bid varchar(8)非空 主键书籍编号bnum int UNIQUE库存bname varchar(40)书籍名称bpubid varchar(12)出版社编号bpubdate date出版日期isbn varchar(16)ISBNwnumintbcostdouble单价brif varchar(500)简介bmenuvarchar(200)目录bclick int点击量bimage varchar(20)图片名字补充说明foreign key(bpubid) references publisher(pubid)2.2.2.3 表publisher表名publisher列名数据类型(精度范围)空/非空约束条件说明pubid varchar(12)非空 主键出版社编号pubname varchar(40) UNIQUE出版社名pubaddr varchar(60)出版社地址pubphone varchar(12)出版社电话pubnet varchar(30)出版社网址补充说明2.2.2.4 表type表名type列名数据类型(精度范围)空/非空约束条件说明tid varchar(8)非空 主键类别编号tname varchar(20)UNIQUE类别名称补充说明2.2.2.5 表booktype表名booktype列名数据类型(精度范围)空/非空约束条件说明btid varchar(8)非空 主键书类编号tidvarchar(8)类别号bid varchar(8)书籍编号 补充说明foreign key(tid) references type(tid), foreign key(bid) references book(bid)2.2.2.6 表writer表名writer列名数据类型(精度范围)空/非空约束条件说明wid varchar(8)非空 主键作者编号wnamevarchar(30)作者姓名wemail varchar(50)作者邮箱 补充说明2.2.2.7 表bookwriter表名bookwriter列名数据类型(精度范围)空/非空约束条件说明bwid varchar(8)非空 主键书籍作者号bidvarchar(8)书籍编号wid varchar(8)作者编号 补充说明foreign key(bid) references book(bid), foreign key(wid) references writer(wid)2.2.2.8 表discuss表名discuss列名数据类型(精度范围)空/非空约束条件说明did varchar(8)非空 主键评论编号ddatedatetime评论时间ddiscuss varchar(200)评论内容bidvarchar(8)书籍编号cnamevarchar(8)用户名 补充说明foreign key(bid) references book(bid), foreign key(cid) references customer(cid)2.2.2.9 表shoppinglist表名shoppinglist列名数据类型(精度范围)空/非空约束条件说明lid varchar(10)非空 主键订单编号ldatedatetime订单时间sdate datetime送货时间allcostdouble订单金额costafterdouble折后金额cnamevarchar用户名saddrvarchar(20)送货地址lstatevarchar(8)订单状态smethodvarchar(10)送货方式pmethodvarchar(10)支付方式lokvarchar(2)发票ltitlevarchar(10)抬头 补充说明foreign key(cid) references customer(cid)2.2.2.10 表listbrif表名listbrif列名数据类型(精度范围)空/非空约束条件说明lbid varchar(10)非空 主键详单编号lidvarchar(10)订单编号bid varchar(8)书籍编号buynint数量 补充说明foreign key(lid) references shoppinglist(lid), foreign key(bid) references book(bid)2.2.2.11 表clist表名clist列名数据类型(精度范围)空/非空约束条件说明clid varchar(8)非空 主键收藏编号cnamevarchar(8)用户名bid varchar(8)书籍编号 补充说明foreign key(cid) references customer(cid), foreign key(bid) references book(bid)2.2.2.12 表manager表名manager列名数据类型(精度范围)空/非空约束条件说明mid int非空 主键管理员编号mnamevarchar(12)管理员姓名mpwd varchar(16)密码 补充说明第三部分 详细设计3.1 前台核心模块介绍3.1.1 购物车的实现购物车功能指的是应用于网店的在线购买功能,它类似于超市购物时使用的推车或篮子,可以暂时把挑选商品放入购物车、删除或更改购买数量,并对多个商品进行一次结款,是网上商店里的一种快捷购物工具。代码实现过程:ActionContext context = ActionContext.getContext();BookDao dao = new BookDao();Book book =dao.queryBookById(bid);ListItem li=new ListItem(book,bnum);if(context.getSession().get(Cus)!=null)if (book != null) if (context.getSession().get(carbooks) = null) List bookList = new ArrayList();Book b=li.getBook();if(bnumb.getBnum()FORWARD=out; /库存不足return FORWARD;bookList.add(li);context.getSession().put(carbooks, bookList);FORWARD = ok; /添加成功 else List bookList = (List) (context.getSession().get(carbooks);for(int i=0;ib.getBnum()FORWARD=out;return FORWARD;bookList.add(li);context.getSession().put(carbooks, bookList);FORWARD = ok; /elseFORWARD = fail; return FORWARD;FORWARD=login; /跳转登录return FORWARD;3.1.2 按条件模糊查找功能根据选择列表的条件进行模糊查找功能,帮助用户快捷检索图书。 实现代码如下:页面上的提交struts2模块:     action处理实现:ActionContext context = ActionContext.getContext();context.getSession().put(searchmethod, method);context.getSession().put(searchkey, key);BookDao dao=new BookDao();List list=new ArrayList();if(method.equals(1)list=dao.queryBookByName(key);else if(method.equals(2)list=dao.queryBookByWriter(key);else if(method.equals(3)list=dao.queryBookByPublisher(key);if(list.size()!=0)context.getSession().put(result, list);FORWARD=do;else if(list.size()=0)context.getSession().put(result, list);FORWARD=do;return FORWARD;Dao查找:String sql=from Book book where book.bname like %+bname+%;Session s=HibernateSessionFactory.getSession();Query q=s.createQuery(sql);return q.list();3.1.3 struts2校验规则根据系统的稳定性、容错性以及安全性要求,输入校验是必不可少的一个步骤。 用户名不能为空 6 20 密码长度应在620个字符之间 第四部分 系统

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论