基于Struts的网上购书系统.docx
- 文档编号:25667504
- 上传时间:2023-06-11
- 格式:DOCX
- 页数:51
- 大小:344.62KB
基于Struts的网上购书系统.docx
《基于Struts的网上购书系统.docx》由会员分享,可在线阅读,更多相关《基于Struts的网上购书系统.docx(51页珍藏版)》请在冰豆网上搜索。
基于Struts的网上购书系统
摘要
随着网络信息的发展,网络在人们生活中的应用越来越广泛。
人们越来越想在最短的时间内购买到自己所需的图书。
但书目的繁多,给人们在繁忙的工作生活中购书带来了很大的麻烦,于是网上购书便成了人们向往的事情。
在电子商务网站中,网上书店是目前应用最广、最成功的典范之一。
用户使用此系统,可以在网络上突破时间和空间的限制而实现网上购书。
网上书店的崛起有效地缩短了图书流通发行环节,将广大读者、图书、出版者、发行者紧密地结合在一起,大大提高了图书流通率。
本系统采用当前最流行的Tomcat网络编程技术,MyEclipse开发工具,关系型数据库MySQL,开发出一套结构功能强大,界面优美的网上购书系统。
主要实现的功能包括:
用户登录管理、用户注册管理、个人信息管理、购物车管理、图书查询、管理员后台管理等功能。
每位用户能够随时浏览本系统,随时掌握图书信息,充分体现本系统的优势。
关健词:
电子商务;在线购书;在线浏览书籍
Abstract
Withthedevelopmentofnetworkinformation,networkinpeople'slivesmoreandmorewidelyapplied.Thereisagrowingwantintheshortesttimepossibletopurchasebookstheyneed.However,manytitlestopeopleworkinginthebusylifeofthebookisabigtrouble,sobookonlinehasbecomeamatterofpeopleyearnfor.
Ine-commercesites,theonlinebookstoreiscurrentlythemostwidelyused,oneofthemostsuccessfulexample.Usersusethissystem,thenetworkcanbeabreakthroughintimeandspaceconstraintstoachievethepurchaseofbooksonline.Theriseofonlinebookstorestoeffectivelyreducetheflowofthebooklinkstheissuetoalargenumberofreaders,books,publishers,distributionworkcloselytogether,greatlyimprovingtheflowrateofthebook.
ThesystemusesthemostpopularnetworkprogrammingTomcattechnology,MyEclipsedevelopmenttools,relationaldatabaseMySQL,thedevelopmentofstructureandfunctionofasetofpowerful,beautifulinterfacesystemonlinebook.Mainfeaturesinclude:
useraccessmanagement,userregistrationmanagement,personalinformationmanagement,shoppingcartmanagement,libraryinformation,theadministratormanagementfeaturessuchasthebackground.Eachusercanbrowsethesystematanytime,tokeepbooksofinformation,fullyembodiestheadvantagesofthesystem.
Keywords:
electroniccommerce;onlinebooks;booksonline
目录
前言1
第1章系统概述2
1.1系统开发背景2
1.1.1网上购书系统的发展2
1.1.2网上购书系统的现状2
1.2系统实现的目标2
1.3系统开发的意义2
第2章系统分析4
2.1系统的需求分析4
2.1.1系统问题分析4
2.1.2系统功能需求分析4
2.2运行的硬件和软件需求4
第3章系统的总体设计6
3.1开发工具、运行环境及技术简介6
3.1.1Myeclipse简介6
3.1.2Tomcat简介6
3.2MySQL简介8
3.3系统的开发技术及主要架构9
3.3.1开发技术的选择9
3.3.2JSP的基础9
3.3.3系统的主要架构及开发模式10
3.4系统功能描述10
3.5系统流程图11
3.6系统操作流程图11
第4章系统的详细设计与实现13
4.1系统数据库表的基本设计13
4.2系统主要界面设计及实现技术14
4.3系统界面设计的具体展现14
4.3.1用户登录界面设计及实现技术14
4.3.2购书者查阅书籍界面17
4.3.3购书者订单历史查看及提交订单界面23
4.3.4购书者注册用户界面29
第5章系统综合与测试35
5.1系统综合35
5.2系统测试35
结论36
参考文献37
谢辞38
前言
伴随着网络的普及和发展,在越来越多的行业都溶入了网络元素。
看看我们的身边,你会发现我们的生活的各个方面正在被网络化。
电子商务就是其中发展最快的。
电子商务以其具有的开放性、全球性、低成本、高效率的特点,迅速成为新一代的贸易形式。
电子商务ElectronicCommerce,通常是指是在全球各地广泛的商业贸易活动,在因特网开放的网络环境下,基于浏览器/服务器应用方式,买卖双方不谋面地进行各种商贸活动,实现消费者的网上购物、商户之间的网上交易和在线电子支付以及各种商务活动、交易活动、金融活动和相关的综合服务活动的一种新型的商业运营模式。
电子商务涵盖的范围很广,一般可分为企业对企业(Business-to-Business),或企业对消费者(Business-to-Consumer)两种。
另外还有消费者对消费者(Consumer-to-Consumer)这种大步增长的模式。
随着国内Internet使用人口之增加,利用Internet进行网络购物并以银行卡付款的消费方式已渐流行,市场份额也在快速增长,电子商务网站也层出不穷。
在当今的社会中,已越来越强调对企业组织中的知识进行全面的管理,首先把信息和知识作为企业重要的资源看待,其次把企业的信息和知识作为企业的财富和核心,强调企业内部的知识的分享和重用,提高员工的知识水平,发挥企业员工和集体的智慧,在知识创新中谋求企业发展的机会。
企业员工获得知识的方法,途径,知识的来源,整理,传播,运用以及与之相关的价值流,知识与价值的分配,知识的利用方法等构成了企业中知识管理所要面对的主要问题。
第1章系统概述
1.1系统开发背景
1.1.1网上购书系统的发展
20世纪90年代以来,计算机网络技术得到了飞速的发展,网络的全球化成为不可抗拒的潮流。
21世纪是信息经济的时代,在信息社会里起决定作用的不是资本,而是信息知识,伴随着高科技Internet的出现,Internet正在走入千家万户,它不仅仅给人们提供了一个全新获取信息的手段,而且日益影响我们的生活、学习和工作方式。
因此,许多人、许多公司都希望自己能够制作网页,以展现本人或公司的风采和产品,以及有许多顾客想要通过上网来购物。
为了迎合人们的文化知识需要和方便大家购物,电子商务随之而出。
网络购书管理系统是目前Internet上广泛使用的在线系统之一,它要求实现的功能非常多,最重要的当属图书的销售,也就是管理库房中的图书,以及管理用户的购物车,从而实现结账等功能。
同时,为了保证图书交易的正常进行,必须对用户身份进行验证。
最后该系统还必须具有管理员的功能,允许管理员对整个系统的数据库进行操作。
1.1.2网上购书系统的现状
在网络技术逐渐渗入社会生活各个层面的今天,传统的购书方式也面临着变革,而在线购书则是大势所趋,网上书籍订购系统就是在当今网络的高速发展下应运而生的。
21世纪是网络飞速发展的时代,随着计算机技术的普及和提高,Internet技术得到迅速发展,上网和创建网站已经成为热门话题,越来越多人开始关注网络,通过网络浏览书籍的方式也就应运而生。
而现今购书不一定到书店,在网络上就出现了各式各样的网上书店。
网上购书系统基本上可以满足购书者对书籍大体概况的了解,相比传统的书店购书方式,网上购书系统的主要好处是一方面可以让购书者足不出户就可以浏览天下书籍。
另一方面,书店店主也不必再为顾客只看不买的行为感到担忧。
1.2系统实现的目标
为满足人们的文化知识需要和方便大家购书,能够让购书者在购书之前对书籍概况进行了解,并且能够让购书者足不出户就浏览所需大部分书籍,掌握各种书籍的销量,能够直观的进行书籍质量的对比,于是开发此系统。
本网上购书系统能够接受用户提交的订单,并且及时的将用户订单反馈给店主,以便购书者可以很快购得书籍。
本网上购书系统可以记载用户购书历史情况,汇总用户购书开销。
1.3系统开发的意义
基于Struts和Hibernate的网上购书系统大大地节约了购书者所花费的时间,并且使得实地售书商在成本商有所节约,缩短了书籍订单在整个流程中的处理时间。
证明了网上购书系统对解决书店实地售书弊端的弥补效果。
本系统软件简单改造后还适合用于其他购物问题。
第2章系统分析
2.1系统的需求分析
系统需求分析是系统分析时期的最后一个阶段,也是整个系统开发中最重要的一步。
2.1.1系统问题分析
传统的购书店店面首先是有限制的,当书店都是看书者的时候,他们占据了大量的物理位置,但店主却因只有看书者而没购书者而耗费着房租和看官监督的人力资源。
而作为购书者也并没因在书店中看了书籍而感到特别的轻松舒畅,因为他们付出了大量的体力和精力。
还有就是大的好的书店由于地理局限,不能将好书好的服务推广出去,更不能得到太多购书者的了解熟悉。
而网上购书系统,正是信息化建设的产物,它是传统购书的延伸。
它可以利用互联网络,随时满足购书者购书的需求,更解决了店主在人力物力上的投入,甚至可以没有店面,而只有货物,书籍信息简介可贴在网上,供购书者慢慢欣赏,如果购书者觉得不满意可以不买,而店主在实物上毫无损耗,购书者也自得其乐了,他们可以悠闲地坐在电脑旁慢慢地欣赏满网站的书籍,而不用担心顾虑店主的脸色。
2.1.2系统功能需求分析
系统开发目标是建立一个稳定的、健全的网上购书系统,要求系统美观大方、操作方便、安全性高,并提供完善的客户购书历史管理、购物车管理、管理员管理界面。
购书系统的开发是在以上的系统开发需求上完成的,主要具备以下功能:
1.购物车管理:
购书者可以通过购物车购买书籍,可以增加或减少书籍数量,用户所购买的书籍都将放到此购物车中在结账时一并结算,整个过程不与数据库交互,购物车即是在内存中的一个实例Map对象。
2.书籍管理:
管理员可以对书籍条目进行增加、删除、修改,还可以更改书籍库存数量,用以提醒购书者书籍所剩数量,书籍管理就回牵涉到对数据库的操作,在整个购书系统中采用的是O/RMapping映射工具Hibernate实现对数据库中数据的增、删、改、查,Hibernate将数据库中数据通过对象/关系映射,将数据库中数据封装成对象,供业务层及之上层次逻辑的使用。
3.订单管理:
存取订单,购书者可以查看购书历史,之前购书的消费情况,购买过哪些书籍等。
此管理逻辑的实现牵涉到Hibernate中many2many的数据操作过程。
4.用户自管理:
主要是用户可以自己查看、修改个人信息以及自己删除历史订单。
5.系统管理:
主要是管理员对账号和密码的维护,可以修改管理员登陆的帐户和密码以及查看用户情况、删除用户信息。
2.2运行的硬件和软件需求
1.硬件需求
操作系统:
WindowsPlatform、LinuxPlatform、UnixPlatform
CPU:
CeleronM1.8GHz及以上。
内存:
256MB及以上。
硬盘空间:
40G及以上的硬盘空间来安装所需的组件。
运行JSP的服务器端要求:
(如表2-1所示)
表2-1运行JSP的服务器端要求
操作系统
需要安装的WebServer
Windows2000/Linux/Unix
Tomcat5.0以上
WindowsXP/Linux/Unix
Tomcat5.0以上
2.软件需求
(1)Tomcat5.0
(2)IE浏览器
(3)Mysql5.0
(4)Frame:
Struts+Spring+Hibernate
第3章系统的总体设计
3.1开发工具、运行环境及技术简介
3.1.1Myeclipse简介
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSF,CSS,Javascript,SQL,Hibernate。
在结构上,MyEclipse的特征可以被分为7类:
1.J2EE模型
2.WEB开发工具
3.EJB开发工具
4.应用程序服务器的连接器
5.J2EE项目部署服务
6.数据库服务
7.MyEclipse整合帮助
对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。
MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。
简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及除错。
3.1.2Tomcat简介
Tomcat是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。
由于有了Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现,Tomcat5支持最新的Servlet2.4和JSP2.0规范。
因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。
Tomcat很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。
Tomcat是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。
对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应对HTML页面的访问请求。
实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。
这里的诀窍是,当配置正确时,Apache为HTML页面服务,而Tomcat实际上运行JSP页面和Servlet。
另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。
不过,Tomcat处理静态HTML的能力不如Apache服务器。
3.1.3Spring简介
Spring是一个开源框架,它由RodJohnson创建。
它是为了解决企业应用开发的复杂性而创建的。
Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。
然而,Spring的用途不仅限于服务器端的开发。
从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。
1.目的:
解决企业应用开发的复杂性
2.功能:
使用基本的JavaBean代替EJB,并提供了更多的企业应用功能
3.范围:
任何Java应用
简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。
4.轻量——从大小与开销两方面而言Spring都是轻量的。
完整的Spring框架可以在一个大小只有1MB多的JAR文件里发布。
并且Spring所需的处理开销也是微不足道的。
此外,Spring是非侵入式的:
典型地,Spring应用中的对象不依赖于Spring的特定类。
5.控制反转——Spring通过一种称作控制反转(IoC)的技术促进了松耦合。
当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。
你可以认为IoC与JNDI相反——不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。
6.面向切面——Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务(例如审计(auditing)和事务()管理)进行内聚性的开发。
应用对象只实现它们应该做的——完成业务逻辑——仅此而已。
它们并不负责(甚至是意识)其它的系统级关注点,例如日志或事务支持。
7.容器——Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器,你可以配置你的每个bean如何被创建——基于一个可配置原型(prototype),你的bean可以创建一个单独的实例或者每次需要时都生成一个新的实例——以及它们是如何相互关联的。
然而,Spring不应该被混同于传统的重量级的EJB容器,它们经常是庞大与笨重的,难以使用。
8.框架——Spring可以将简单的组件配置、组合成为复杂的应用。
在Spring中,应用对象被声明式地组合,典型地是在一个XML文件里。
Spring也提供了很多基础功能(事务管理、持久化框架集成等等),将应用逻辑的开发留给了你。
所有Spring的这些特征使你能够编写更干净、更可管理、并且更易于测试的代码。
它们也为Spring中的各种模块提供了基础支持。
3.1.4Struts简介
Struts最早是作为ApacheJakarta项目的组成部分,项目的创立者希望通过对该项目的研究,改进和提高JavaServerPages、Servlet、标签库以及面向对象的技术水准。
Struts这个名字来源于在建筑和旧式飞机中使用的支持金属架。
这个框架之所以叫"Struts",是为了提醒我们记住那些支撑我们房屋,建筑,桥梁,甚至我们踩高跷时候的基础支撑。
这也是一个解释Struts在开发Web应用程序中所扮演的角色的精彩描述。
当建立一个物理建筑时,建筑工程师使用支柱为建筑的每一层提供支持。
同样,软件工程师使用Struts为业务应用的每一层提供支持。
它的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间。
我们仍然需要学习和应用该架构,不过它将可以完成其中一些繁重的工作。
如果想混合使用Servlets和JSP的优点来建立可扩展的应用,Struts是一个不错的选择。
3.1.5Hibernate简介
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
Hibernate的核心接口一共有5个,分别为:
Session、SessionFactory、Transaction、Query和Configuration。
这5个核心接口在任何开发中都会用到。
通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。
下面对这五个核心接口分别加以介绍。
Session接口:
Session接口负责执行被持久化对象的CRUD操作(CRUD的任务是完成与数据库的交流,包含了很多常见的SQL语句。
)。
但需要注意的是Session对象是非线程安全的。
同时,Hibernate的session不同于JSP应用中的HttpSession。
这里当使用session这个术语时,其实指的是Hibernate中的session,而以后会将HttpSesion对象称为用户session。
SessionFactory接口:
SessionFactroy接口负责初始化Hibernate。
它充当数据存储源的代理,并负责创建Session对象。
这里用到了工厂模式。
需要注意的是SessionFactory并不是轻量级的,因为一般情况下,一个项目通常只需要一个SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。
Configuration接口:
Configuration接口负责配置并启动Hibernate,创建SessionFactory对象。
在Hibernate的启动的过程中,Configuration类的实例首先定位映射文档位置、读取配置,然后创建SessionFactory对象。
Transaction接口:
Transaction接口负责事务相关的操作。
它是可选的,开发人员也可以设计编写自己的底层事务处理代码。
Query和Criteria接口:
Query和Criteria接口负责执行各种数据库查询。
它可以使用HQL语言或SQL语句两种表达方式。
3.2MySQL简介
本系统所采用的数据库:
MySQL
MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。
在2008年1月16号被Sun公司收购。
目前MySQL被广泛地应用在Internet上的中小型网站中。
由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
而本系统将MySQL数据库作为存储信息的首选也是看重它的小巧中的强大,虽然体积小,但是关系型数据库应有的特点却是非常的全。
3.3系统的开发技术及主要架构
3.3.1开发技术的选择
本系统选择web开发中最流行的框架组合Spring+Struts+Hibernate,Spring作用贯穿整个系统的业务逻辑层,通过IOC控制反转,将需要用的操作对象进行插拔式填入,而且通过它的AOP(面向切面),将散落在业务层中的各处的控制事物及日志安全的代码整合归并到一处对业务逻辑层进行控制,大大简化了代码书写量。
Struts对此系统的View、Controller层做出了
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Struts 网上 购书 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)