为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 信用卡商城网站的设计与实现

信用卡商城网站的设计与实现

2017-09-01 34页 doc 347KB 16阅读

用户头像

is_153723

暂无简介

举报
信用卡商城网站的设计与实现信用卡商城网站的设计与实现 摘要 电子商务的一个重要组成部分网上商城, 本身具有高效率、低成本、全球化的特点。通过一个电子商务的实际项目信用卡商城,本文介绍了如何在电子商务系统中使用struts2技术。本人主要负责后台的商品管理模块。这个网上购物子系统发挥了struts2的技术特点,运用JavaBeans、JSP、 数据连接池等企业级Java技术,具有平台无关的特性并支持各种主要的大型关系型数据库。系统模型使用Struts2框架实现,系统视图使用JSP、JavaBeans和struts2强大的标签库等技术实现。MVC设计...
信用卡商城网站的设计与实现
信用卡商城网站的与实现 摘要 电子商务的一个重要组成部分网上商城, 本身具有高效率、低成本、全球化的特点。通过一个电子商务的实际项目信用卡商城,本文介绍了如何在电子商务系统中使用struts2技术。本人主要负责后台的商品管理模块。这个网上购物子系统发挥了struts2的技术特点,运用JavaBeans、JSP、 数据连接池等企业级Java技术,具有平台无关的特性并支持各种主要的大型关系型数据库。系统模型使用Struts2框架实现,系统视图使用JSP、JavaBeans和struts2强大的标签库等技术实现。MVC设计方法将系统的商业逻辑和表现逻辑实现彻底分离。使其开发效率和重用性有了个质的飞跃。 第一章讨论了本课题的设计背景,并对所开发的软件要实现的功能特点进行了介绍。 第二章通过对信用卡商城系统的需求,全面验证了系统开发的可行性,为下一步设计工作打下坚实基础。 第三章进行了具体的系统设计,其中包括应用系统设计、模块设计及数据库设计。本章还通过数据流图和模型,完善了系统框架的建造。 第四章进行了系统的实现,包括数据库之间的链接,和模块搭建设计。 关键字:信用卡商城, 网上购物, B/S,Struts2, Oracle, JSP 宜顺网www.13LW.com 目 录 一、 前言.................................................................................................................. 3 二、 应用系统运行平台.......................................................................................... 3 (一)开发环境及工具介绍................................................................................ 3 (二)选用的开发语言及数据库简介................................................................ 3 三、 需求分析.......................................................................................................... 4 (一)需求规格说明书........................................................................................ 4 (二)需求平台模块设计.................................................................................... 5 (三)系统流程设计............................................................................................ 6 四、 数据库设计.................................................................................................... 10 (一) 创建数据库 ................................................................................................ 10 (二) 创建数据库用户 ........................................................................................ 10 (三) 创建表 ........................................................................................................ 10 (四) 表之间的关系E-R图 ................................................................................ 13 五、 应用程序设计................................................................................................ 14 1、 说明 ..................................................................................................... 14 2、 工程目录结构图 ................................................................................. 14 3、 数据库连接 ......................................................................................... 15 4、 商品大分类信息管理功能实现 ......................................................... 16 5、 商品小分类信息管理功能实现 ......................................................... 19 6、 商品信息管理 ..................................................................................... 23 7、 信用卡商城主界面 ............................................................................. 27 六、 参考文献........................................................................................................ 30 宜顺论文网www.13LW.com 一、 前言 随着互联网技术的迅速发展,网络已逐渐深入人心,更是成为继报刊、电视广播等传统媒体之后而兴起的一新传媒介质,网络已成为众多宣传手段的重中之重,各种各样的网站也就应运而生:为宣传企业而制作的公司网站、可进行网上购物的电子商务网站、能及时了解到天下事的新闻网站、方便学习的教育网站,还有学校、团体、个人等等各大各小的网站,充斥着我们的视野,满足着我们的需要。网站的规划与建设,已悄然被许多人摆到了首要的迫在眉睫的位置上 二、 应用系统运行平台 (一)开发环境及工具介绍 使用的操作系统是Microsoft Windows7+ Eclipse作为开发环境。使用的技术主要是struts2,现在struts2也是主流框架,页面主要是JSP,页面数据的显示主要采用的是struts2的标签来实现。数据的存储采用的是现在流行的主流数据库oracle,在数据库管理功能、完整性检查、安全性、一致性方面都有良好的表现。 (二)选用的开发语言及数据库简介 JSP: JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。 STRUTS2: Struts 2是Struts的下一代产品。是在 struts 和WebWork的技术基础上进行了合并,全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构的差别巨大。Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与Servlet API完全脱离开,所以Struts 2可以理解为WebWork的更新产品。因为Struts 2和Struts 1有着太大的变化,但是相对于WebWork,Struts 2只有很小的变化 ORACLE: Oracle简称甲骨文,是仅次于微软公司的世界第二大软件公司,该公司名称就叫Oracle。该公司成立于,,,9年,是加利福尼亚州的第一家在世界上推出以关系型数据管理系统(RDBMS)为中心的一家软件公司。 个市场的大部Oracle不仅在全球最先推出了RDBMS,并且事实上掌握着这分份额。现在,他们的RDBMS被广泛应用于各种操作环境:Windows NT、基于UNIX系统的小型机、IBM大型机以及一些专用硬件操作系统平台 宜顺论文网www.13LW.com 三、 需求分析 随着信息技术的不断发展,我们现在已经步入了一个信息化的时代,而信息时代的代表便是网络技术的日渐成熟,现在网络已经和我们的生活紧密的联系起来了,我们不敢想象没有网络我们的生活会像怎么样,也许就像食物中没有调料,现在的生活离开了网络会变得索然无味。通过网络我们可以足不出户的做许多事情。休闲,娱乐,学习,购物,交友等等许多我们数之不尽的事情。随着信息化的不断进步,今天一种新的购物方式已然出现。那就是上文已经提及的信用卡商城系统。 (一)需求规格说明书 信用卡商城系统需求主要分以下两部分: (1)前台需求:要求能修改会员资料,查看商城公告,特价商品,商品分类,新上架的商品,以及能按条件搜索商品,最后就是能够购买商品。 (2)后台需求:主要是商品信息的管理,增加,修改,删除等等。会员信息的管理,以及订单的管理。 根据以上用户提出的实际需求,结合整理的需求内容如下: 1.信息流程: 信息的流程是后台商品信息发布?数据库?前台用户商品购买。如图2.1所示。 产品是否符保存到数据库 前台展合 后台发布产品 发布条件 示 图1 信息流图(DFD) 2.信息内容 提供商品的基本信息以及会员的基本信息。包括新上架商品,特价商品,会员信息等。 3.系统功能 前台: 宜顺论文网www.13LW.com 新品上架:提供新上架商品的信息。 特价商品:提供特价商品的信息。 会员管理:提供会员信息的修改等。 购物车管理:提供购物车的商品数量的变更,付款,清空购物车等功能。 订单管理:提供订单的浏览及修改等。 销售排行:提供热销商品的信息。 后台: 商品管理:提供商品信息的添加,修改,删除等。 会员管理:提供会员的冻结与解冻等相关操作。 订单管理:提供订单是否执行操作。 公告管理:提供公告信息的添加与删除操作。 登录退出后台:返回到前台。 (二)需求平台模块设计 信用卡商城系统平台主要包括两大功能模块,前台包括用户登录,商城公告,购物车,新品上架,特价商品,商品分类,商品销售排行等功能模块。后台主要包括商品管理、会员管理、订单管理,公告管理,退出后台等功能;搜索主要包括:商品名称、商品类别: 结构图如下图所示: 信用卡商城系统平台 前后 台 台 用购商特新商商商会订公退 户物城价品品品品员单告出 登车 公商上销分管管管管后 录 告 品 架 售类 理 理 理 理 台 排 图2 结构图 行 宜顺论文网www.13LW.com (三)系统流程设计 本系统分为前台购物流程和后台订单处理流程 (1) 前台购物流程图 去提浏选订去未注册用户 注册 收交览 择购购 银 订商 商 商 物 单 已登记注册用户 未登记注册用户 游客 图3 前台购物流程图 (2) 后台购物流程图 用订订订订 户单单单单 订 处 发 结 删 图4 后台购物流程图 (3) 商品搜索流程图 开始搜索 输入条件 搜索结果 查看商品 购物车 宜顺论文网www.13LW.com 继续搜 下订单 图5 商品搜索流程图 (4) 注册功能流程图 注册入口 是 必选项为空, 否 否 用户名有效, 是 否 密码是否一致, 是 否 密码符合要求, 是 否 E-MAIL有效, 是 否 其他信息有效, 宜顺论文网www.13LW.com 是 否 注册成功 图6 注册功能流程图 (5) 用户登录流程图 登录入口 否 查询用户是否存在 是 否 核对密码是否正确 是 取得用户名和密 码 将UserID存入 session中 登录成功 宜顺论文网www.13LW.com 图7 用户登录流程图 6) 商品管理流程图 ( 商品管理 查询管理 添加商品 修改,删除 否 满意否 是 返回 图8 商品管理流程图 (7) 购物车流程图 购物车 宜顺论文网www.13LW.com 查看商品 否 调整商品 是 下订单 图9 购物车流程图 四、 数据库设计 (一) 创建数据库 使用的是oracle 10g, Oracle安装完毕之后,会提供给我们一个默认的数据库实例,但是我们需要建立自己的数据库。创建数据库的方式有两种:一种是通过向导工具创建;一种是自己手动创建。介绍一下使用向导创建的过程: Oracle 10g创建数据库的步骤共分为12步,在“开始——Oracle——Configuration And Migration Tools——Database Configuration Assi stant”里打开新建向导,下一步,选择第一项“创建数据库”,这时出现四种数据库模板,选择第三项“定制数据库”,填写数据库名称CreditData;下一步,对数据库进行一些其他的配置;下一步,输入登录口令,还可以为不同用户指定不同的口令,下一步,选择数据库存储机制,通常以文件的形式存储,下一步,为数据库指定存储位置,下一步,指定数据备份的位置,下一步,选择数据库组件和自定义脚本等等,下一步,安装。由于Oracle数据库比较大,安装过程大约要花费十分钟左右 (二) 创建数据库用户 通过图形化界面操作,在数据库CreditData下创建用户credit,并授予该用户连接数据库和dba的权限。设置该用户的密码。 (三) 创建表 1、 表名称:TB_PLACARD 含义:公告表 Null 字段名称 字段类型 含义 ID INTEGER 否,自增 主键列 TITLE VARCHAR2 (100) 标题 CONTENT VARCHAR2(4000) 否 内容 CRETIME DATE 创建时间 2、表名称:TB_SUPERTYPE 含义:大类别表 Null 字段名称 字段类型 含义 宜顺论文网www.13LW.com ID INTEGER 否,自增 主键列 TYPENAME VARCHAR2 (100) 否 大类别名称 3、表名称:TB_SUBTYPE 含义:小类别表 字段名称 字段类型 Null 含义 ID INTEGER 否,主键列 自增 SUPERTYPEIINTEGER 否 大类别ID D TYPENAME VARCHAR2 否 小类别名称 (100) 4、表名称:TB_MEMBER 含义:会员表 Null 字段名称 字段类型 含义 ID INTEGER 否,自增 主键列 USERNAME VARCHAR2(20) 否 用户名 TRUENAME VARCHAR2(20) 否 真实姓名 PASSWORD VARCHAR2(40) 否 密码 CITY VARCHAR2(20) 否 城市 ADDRESS VARCHAR2(100) 否 地址 POSTCODE NUMBER 否 邮政编码 CARDNO VARCHAR2 (20) 证件号码 CARDTYPE VARCHAR2 (20) 证件类型 TEL VARCHAR2 (20) 否 电话 EMAIL VARCHAR2(100) 电子邮箱 FREEZE CHAR 冻结 CREDITCARDNO VARCHAR2 (20) 否 信用卡卡号 CREDITCARDPWD VARCHAR2 (40) 否 信用卡密码 CREDITCARDDATE DATE 否 信用卡有效日期 CARDCVV VARCHAR2 (4) 否 信用卡卡号后4位 CARDPOINTS INTEGER 卡内积分 5、表名称:TB_GOODS 含义:商品表 字段名称 字段类型 Null 含义 ID INTEGER 否,主键列 自增 TYPEID INTEGER 否 小类别ID GOODSNAME VARCHAR2(否 商品名称 宜顺论文网www.13LW.com 200) PRICE NUMBER 否 原价 (8,2) NOWPRICE NUMBER 现价 (8,2) PICTURE VARCHAR2 图片 (200) CRETIME DATE 否 创建时间 NEWGOODS CHAR (1) 否 新上商品 SPECIAL CHAR (1) 特价商品 INTRODUCE VARCHAR2( 详细信息介 4000) 绍 STOCK CHAR (1) 否 是否有库存 POINTSFLAG CHAR(1) 否 支持积分兑 换 GOODSPOINTINTEGER 否 商品积分 S 6、表名称:TB_ORDER 含义:订单表 字段名称 字段类型 Null 含义 ID INTEGER 否,主键列 自增 MEMBERID INTEGER 否 会员ID ORDERCODE VARCHAR2 否 订单号 (20) BNUMBER NUMBER 否 品种数 USERNAME VARCHAR2 否 收件人姓名 (20) ADDRESS VARCHAR2 否 邮寄地址 (100) POSTCODE NUMBER 否 邮政编码 TEL VARCHAR2 否 电话 (20) PAY VARCHAR2 否 支付方式 (20) CARRY VARCHAR2 否 运送方式 (20) 宜顺论文网www.13LW.com ORDERDATE DATE 否 订单日期 ENFORCE CHAR (1) 执行 BZ VARCHAR2 备注 (200) 7、表名称:TB_ORDER_DETAIL 含义:订单明细表 字段名称 字段类型 Null 含义 ID INTEGER 否,主键列 自增 ORDERID INTEGER 否 订单ID GOODSID INTEGER 否 商品ID PRICE NUMBER 否 价格 (8,2) NUMBERS NUMBER 否 数量 8、表名称:TB_MANAGER 含义:管理表 字段名称 字段类型 Null 含义 ID INTEGER 否,主键列 自增 MANAGER VARCHAR2 否 管理员名 (20) PWD VARCHAR2 否 密码 (40) 9、表名称:TB_EVALUATE 含义:商品评价表 字段名称 字段类型 Null 含义 ID INTEGER 否,主键列 自增 GOODSID INTEGER 否 商品ID MEMBERID INTEGER 否 会员ID SUBJECT VARCHAR2 否 主题 (100) CONTENT VARCHAR2(否 详细内容 2000) CREDATE DATE 否 创建时间 。 (四) 表之间的关系E-R图 宜顺论文网www.13LW.com 图10 ER图 五、 应用程序设计 1、 说明 该系统需求评估后,若一个人完成,需要耗费大量时间,故对系统进行权衡后,只完成商品管理模块的开发;此模块分为三个子模块,如下: 1. 大分类信息管理 2. 小分类信息管理 3. 商品信息管理 2、 工程目录结构图 宜顺论文网www.13LW.com 图11 结构图 3、 数据库连接 出于方便修改的考虑,我们将与数据库的连接,通过JNDI的形式单独写出来并进行编译,将其放到CreditCardShop\WebRoot\META-INF目录下的一个context.xml文件中,在web.xml中加载它,web.xml中配置如下 jdbc/CreditCardDataSource javax.sql.DataSource Container 其中数据源配置文件配置如下: 宜顺论文网www.13LW.com 4、 商品大分类信息管理功能实现 大分类信息管理包括大分类信息的查询、添加和删除功能。 查询: superTypeView.jsp 图12 查询 关键代码如下: 宜顺论文网www.13LW.com public String surperList() { superTypeService = new SuperTypeService(); superList = superTypeService.getSuper(); if (superList.size() > 0) { log.info("成功"); return SUCCESS; } else { log.info("失败"); return INPUT; } } 添加: superTypeAdd.jsp 图13 添加 关键代码如下: public String addSuper() throws SQLException { superTypeService = new SuperTypeService(); superTypeService.addSuper(superType); return findSup(); } 宜顺论文网www.13LW.com 删除: superTypeView.jsp 图14 删除 关键代码如下: public String dllSuperType() { superTypeService = new SuperTypeService(); // 获取选择的id列表 String[] strings = ServletActionContext.getRequest() .getParameterValues("delid"); int[] placardIds = new int[strings.length]; // 转化为整形数组 for (int i = 0; i < strings.length; i++) { placardIds[i] = Integer.parseInt(strings[i]); } superTypeService.dllSuper(placardIds); log.info("删除商品大分类"); return findSup(); } 宜顺论文网www.13LW.com 5、 商品小分类信息管理功能实现 小分类信息管理包括小分类信息的查询、添加和删除功能 查询: subTypeView.jsp 图15 查询 关键代码如下: public String findSub() { //创建subService类 subService = new SubTypeService(); //定义页面类 PageModel pm = new PageModel(); //查询数据库中小分类并存放在List表中 List list = subService.searchSubTypeByAll(); //设置数据的总条数 pm.setTotal(list.size()); //设置显示的页面数 int i=list.size(); if(i%10==0){ pm.setPages(i/10); } 宜顺论文网www.13LW.com else { pm.setPages(i/10+1); } //获取当前页面 String str = ServletActionContext.getRequest().getParameter("pager.offset"); int offset = 0; int pageSize = 10;// 每页显示数据行数 if (str == null || str.equals("")) { offset = 0; } else { offset = Integer.parseInt(str); } List list2 = subService.searchSubTypeByPage(offset + 1, pageSize); pm.setDatas(list2); subList=list2; ServletActionContext.getRequest().setAttribute("pm", pm);// 送入前台 ServletActionContext.getRequest().setAttribute("pageSize", pageSize);// 送入前台 ServletActionContext.getRequest().setAttribute("offset", offset);// 送入前台 log.info("转入公告主页"); return SUCCESS; } 添加: subTypeAdd.jsp 宜顺论文网www.13LW.com 图16 添加 关键代码如下: public String addSub() throws Exception{ subService=new SubTypeService(); //将大商品的信息存放在superList列表中 superList=subService.searchSuperType(); //跳转到toSubAdd()方法 return toSubAdd(); } 删除: subTypeView.jsp 宜顺论文网www.13LW.com 图17 删除 关键代码如下: public String deleteSubType() throws Exception{ subService=new SubTypeService(); boolean bl; String[] strings =ServletActionContext.getRequest().getParameterValues("delid"); int[] subT = new int[strings.length]; for (int i = 0; i < strings.length; i++) { subT[i] = Integer.parseInt(strings[i]); } bl=subService.deleteSubMany(subT); if(bl){ log.info("删除小商品类信息成功...."); this.addFieldError("", "删除成功~"); }else { this.addFieldError("该小商品类信息ID", "某个商品信息ID,不能删除"); } return findSub(); } 宜顺论文网www.13LW.com 6、 商品信息管理 其中商品信息管理包括商品信息的查询、添加、修改和删除功能 查询: goodsManageView.jsp 图18 查询 关键代码如下: public String getGoodsInfo() throws Exception { goodsManageService = new GoodsManageService(); PageModel pm = new PageModel(); String str = ServletActionContext.getRequest().getParameter( "pager.offset"); int offset = 0; if (str == null || str.equals("")) { offset = 0; } else { offset = Integer.parseInt(str); } List list = goodsManageService.getGoods(); pm.setTotal(list.size()); 宜顺论文网www.13LW.com goodsList = goodsManageService.searchByPage(offset + 1); ServletActionContext.getRequest().setAttribute("pm", pm);// 送入前台 if (goodsList.size() > 0) { log.info("成功跳转到商品管理界面"); } return SUCCESS; } 添加: goodsManageAdd.jsp 图19 添加 关键代码如下: public String addGoodsInfo() throws Exception { // 根据当前日期和时间命名上传图片的文件名 String imageName = new Date().getTime() + getExtention(pictureFileName); // 把上传的图片放在web应用程序的images文件的goods目录下 File imageFile = new File(ServletActionContext.getServletContext() .getRealPath("/images/goods") 宜顺论文网www.13LW.com + "/" + imageName); // 执行copy上传文件 copy(picture, imageFile); // 设置上传图片的文件名称封装到商品信息对象里,插入数据库 goods.setPicture(imageName); goodsManageService = new GoodsManageService(); boolean result = goodsManageService.addGoods(goods); if (result == true) { log.info("添加商品:" + goods.getGoodsName() + "成功~"); return getGoodsInfo(); } else { log.info("添加商品:" + goods.getGoodsName() + "失败~"); return toGoodsManageAdd(); } } 修改: goodsManageEdit.jsp 图20 修改 宜顺论文网www.13LW.com 关键代码如下: public String editGoodsInfo() throws Exception { // 根据当前日期和时间命名上传图片的文件名 String imageName = new Date().getTime() + getExtention(pictureFileName); // 把上传的图片放在web应用程序的images文件的goods目录下 File imageFile = new File(ServletActionContext.getServletContext() .getRealPath("/images/goods") + "/" + imageName); // 执行copy上传文件 copy(picture, imageFile); // 设置上传图片的文件名称封装到商品信息对象里,插入数据库 goods.setPicture(imageName); goodsManageService = new GoodsManageService(); boolean result = goodsManageService.editGoods(goods); if (result == true) { log.info("修改商品信息成功"); return getGoodsInfo(); } else { log.info("修改商品信息失败~"); return "editGoods"; } } 删除: goodsManageDelete.jsp 宜顺论文网www.13LW.com 图21 删除 关键代码如下: public String delGoodsInfo() throws Exception { goodsManageService = new GoodsManageService(); boolean result = goodsManageService.delGoods(goods); if (result == true) { log.info("删除商品信息成功"); return getGoodsInfo(); } else { log.info("删除商品信息失败~"); return "delGoods"; } } 7、 信用卡商城主界面 商城前台主界面 宜顺论文网www.13LW.com 图22 商城前台主界面 后台登陆页面 图23 后台登陆页面 宜顺论文网www.13LW.com 图24 后台登陆页面 宜顺论文网www.13LW.com 六、 参考文献 [1] 张思亮, 王晓峰, 靳瑞勇. 网上购物系统的研发 [J]. 商场现代 化.2008(13):67-67. [2] 陈巧蓉, 陈刚, 熊恩成. 网上购物系统htm1版开发研究 [J]. 西南民族大 学学报:自然科学版.2007,33(4):961-963. [3] 廖彦华, 罗小亮. 基于JSP技术的网上购物系统 [J]. 电脑知识与技术:学 术交流.2007(12):1276-1279. [4] 何静, 谭新民. 基于J2EE的网上购物系统的设计 [J]. 山西电子技 术.2008(1):66-68. [5] 李贤华. 基于JSP技术的大型网上购物系统的设计与实现 [J]. 计算机与 现代化.2008(8):82-84,89. [6] 孙鑫. Struts 2深入详解 [J]. 电子工业出版社.2008,7 [7] 克拉恩, 帕斯卡雷洛, 杰姆斯 Ajax系列?图灵程序设计丛书[J]. 人民邮电 出版社.2006.4 [8] 周志刚, 应用Struts框架开发管理信息系统的研究[J]. 2006 河南理工大学 学报:自然科学版 [9] 俞希标, 基于struts框架通用数据库维护技术的实现.2005 程序员 [10] 杨学瑜, JSP入门与进步. 北京清华大年夜学出版社 [11] 孙晓龙, JSP动态网站技巧入门与进步.北京人平易近邮电出版社 宜顺论文网www.13LW.com
/
本文档为【信用卡商城网站的设计与实现】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索