《网上商城购物系统毕业设计》由会员分享,可在线阅读,更多相关《网上商城购物系统毕业设计(39页珍藏版)》请在金锄头文库上搜索。
1、网上商城购物系统毕业设计目录前言1第1章 绪论21.1 课题背景21.2 课题研究的意义21.3 课题研究的方法2第2章 程序开发的技术基础32.1 HTML语言32.2 JSP42.3 SSH42.3.1 Hibernate的工作原理42.3.2 Spring的工作原理52.3.3 Struts2的工作原理62.4 数据库原理82.4.1 SQL语言简单介绍82.4.2 ADO技术介绍8第3章 需求分析103.1 系统主要工作流程图103.1.1 后台管理模块流程图103.1.2 前台管理模块流程图103.2 系统实现采用环境113.3 系统功能需求12第4章 功能的设计与实现134.1 系
2、统主要设计134.1.1 系统主要功能134.1.2 主要功能模块134.2 数据库的分析与设计144.2.1 数据库的需求分析144.2.2 数据库的结构设计154.3 系统主要功能实现184.3.1 注册页面的实现184.3.2 登录界面的实现194.3.3 商品分类224.3.4 后台管理登录页面26第5章 系统测试325.1 测试方法325.2 预期测试结果325.3 实际测试结果32结论33谢 辞34参考文献35 .专业.专注. 前言近年来,随着Internet的迅速崛起,互联网已日益成为收集提供信息的最佳渠道并逐步进入传统的流通领域。于是电子商务开始流行起来,越来越多的商家在网上建
3、立起商店,向消费者展示出一种新颖的购物理念。网上购物系统作为B2B,B2C,C2C电子商务的前端商务平台,在其商务活动全过程中起着举足轻重的作用。本文旨在讨论如何建设B2C的网上购物系统。 网上购物是一种具有交互功能的商业信息系统。它向用户提供静态和动态两类信息资源。所谓静态信息是指那些比经常变动或更新的资源,如公司简介、管理规和公司制度等等;动态信息是指随时变化的信息,如商品报价,会议安排和培训信息等。网上购物系统具有强大的交互功能,可使商家和用户方便的传递信息,完成电子贸易或EDI交易。这种全新的交易方式实现了公司间文档与资金的无纸化交换。 在美、日等信息化程度较高的国家和地区,网络商店发
4、展速度迅猛,美国的世界级超一流的零售商,如沃尔玛凯玛特,家庭仓储、科罗格、J.C培尼等纷纷挤身于网络经商的行列。调查表明:美国的家庭已越来越习惯于在家中从网上购物。在我国,网上购物从无到有也不过短短几年时间。我国第一家网上购物发生在1996年,燕莎友谊商场首次通过网上商城售出一个景泰蓝,虽然货款的支付不是在网上进行的,但这毕竟为我国零售业奏出了网上购物的先声。根据CNNIC的统计结果,截止2004年1月中国有互联网用户7950万人,而又有40.7%以上的网民在过去的一年里有过网上购物经历,这就说明中国有网上购物的用户达是3235.7万人,并且这一数字还在以17%左右的速度增长,这说明在中国发展
5、网上购物具有良好的群众基础,网上购物方式日趋被大家所接受。 第1章 绪论1.1 课题背景随着Internet的快速发展,人们已经进入了信息时代,Web已经对商业、工业、银行、财政、教育、政府、娱乐和信息产业及人们的工作、生活产生了深远的影响。许多传统的信息和数据库系统正在被移植到互联网上,人们获得信息的来源已经不再只是报纸、电视、广播等传统媒体,一个新的信息传送媒体逐渐被人们所青睐。围广泛的,复杂的分布式应用正在Web环境中出现。网上购物系统就相继的出现,给人们带来了不少的方便快捷,网上购物系统正在快速向前发展。1.2 课题研究的意义当今时代是一个互联网络高速发展的时代,本课题的研究意义就在于
6、构造一个网络购物的平台,使人们在纷繁的网络中也能够找到一个购物的天地。同时也是对三年学习的一个总结和提高。1.3 课题研究的方法本课题的开发采用SSH+SQL Sever实现,前期主要运用所学相关知识、查询资料、学习其他优秀管理系统开发方法,结合相关要求写出需求分析;后期,进行本课题的设计与开发。课题的页面主要采用java语言对数据库进行操作,通过对数据库的查询搜索来实现,对表单以及数据的校验采用java script脚本语言,控制页面的正确显示和对用户类型的权限设计。采用SQL数据库,实现整个系统的操作。在整个设计过程中以需求分析为基础,写出系统实现流程及相关问题的实现方法;系统开发完成后,
7、进行调试和运行,做好调试和试运行的相关记录。第2章 程序开发的技术基础2.1 HTML语言HTML(Hyper Text Markup Language 超文本标记语言)是一种用来制作超文本文档的简单标记语言。与常见的字处理文件不同,web页以超文本标识语言编排格式。HTML文件是带有特定HTML插入标记的用以编排文档属性和格式的标准文本文件。它能独立于各种操作系统平台(如UNIX,WINDOWS等)。自1990年以来HTML就一直被用作World Wide Web上的信息表示语言,用于描述Homepage的格式设计和它与WWW上其它Homepage的连结信息。 HTML文档(即Homepag
8、e的源文件)是一个放置了标记的ASCII文本文件,通常它带有.html或.htm的文件扩展名。生成一个HTML文档主要有以下三种途径: (1)手工直接编写(例如用你所喜爱的ASCII文本编辑器或其它HTML的编辑工具)。(2)通过某些格式转换工具将现有的其它格式文档(如WORD文档)转换成HTML文档。 (3)由Web服务器(或称HTTP服务器)一方实时动态地生成。一般的HTML页面具有如下的结构:html,这是HTML正文部分/body可见在一个HTML网页文件中,一般必须有一对html标记作为文件的开头和结尾,在标记后是头部标记,其后是实体标记。2.2 JSP JSP(JavaServer
9、 Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。 Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。 JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,
10、因此客户端只要有浏览器就能浏览。 JSP的1.0规的最后版本是1999年9月推出的,12月又推出了1.1规。目前较新的是JSP1.2规,JSP2.0规的征求意见稿也已出台。2.3 SSH2.3.1 Hibernate的工作原理1.Hibernate是如何连接数据库主要是通过hibernate.cfg.xml配置文件中的配置。在这个文件中定义了数据库进行连接所需要的信息,包括JDBC驱动、用户名、密码、数据库方言等configuration类借助dom4j的XML解析器解析设置环境,然后使用这些环境属性来生成SessionFactory。这样这个sessionFactory生成的session就
11、能成功获得数据库的连接。2.Hibernate是如何进行数据库写操作对数据库的写操作包括保存、更新和删除,当保存一个POJO持久对象时,触发Hibernate的保存事件监听器进行处理。Hibernate通过映射文件获得对象对应数据库表名以及属性所对应的表中的列名,然后通过反射机制持久化对象(实体对象)的各个属性,最终组织成向数据库插入新对象的SQLinsert语句。调用了session.save()方法后,这个对象会标识成持久化状态存放在session中,对于Hibernate来说它就是一个持久化了的对象,但这个时候Hibernate还不会真正的执行insert语句,当进行session的刷新
12、同部或事务提交时,Hibernate会把session缓存中的所有SQL语句一起执行,对于更新、删除操作也是采用类似的机制。然后,提交事务并事务提交成功后,这些写操作就会被永久地保存进数据库中,所以,使用session对数据库操作还依赖于Hibernate事务的处理。如果设置了二级缓存,那么这些操作会被同步到二级缓存中,Hibernate对数据库最终操作也是依赖于底层JDBC对数据库进行。3.Hibernate如何从数据库中载入对象当使用session.load()载入对象时,可以设置是否采用延迟加载,如果延迟加载,那么load返回的对象实际是CGLIB或javassist返回的代理类,它的非
13、主键属性都是空的,这对于对象集合属性很有效。Hibernate以此来节约存,当真正需要读取对象时,Hibernate会先尝试从session缓存中读取,如果session缓存中数据不存在或者是脏数据并且配置了二级缓存,Hibernate尝试从二级缓存中检索数据,否则Hibernate会根据对象类型,主键等信息组织select语句到数据中读取,再把select结果组织成对象返回。4.Hibernate如何进行数据库查询操作Hibernate提供SQLHQLCriteria查询方式。HQL是其中运用最广泛的查询方式。用户使用session.createQuery()方法以一条HQL语句为参数创建Q
14、uery查询对象后,Hibernate会使用Anltr库把HQL语句解析成JDBC可以识别的SQL语句,如果设置了查询缓存,那么执行Query.list()时,Hibernate会先对查询缓存进行查询,如果查询缓存不存在,再使用select语句查询数据库。2.3.2 Spring的工作原理Spring是非侵入式的:典型地,Spring应用中的对象不依赖于Spring的特定类。 1. 控制反转Spring通过一种称作控制反转(IoC)的技术促进了松耦合。当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。你可以认为IoC与JNDI相反不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。 2. 面向切面Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务(例如审计和事务管理)进行聚性的开发。应用对象只实现它们应该做的完成业务逻辑仅此而已。它们并不负责(甚至是意识)其它的系统级关注点,例如日志或事务支持。3. 容器Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器,你可以配