毕业设计(论文)-基于hibernate和struts的网上书店系统.doc_第1页
毕业设计(论文)-基于hibernate和struts的网上书店系统.doc_第2页
毕业设计(论文)-基于hibernate和struts的网上书店系统.doc_第3页
毕业设计(论文)-基于hibernate和struts的网上书店系统.doc_第4页
毕业设计(论文)-基于hibernate和struts的网上书店系统.doc_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

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

文档简介

北京邮电大学毕业设计基于hibernate和struts的网上书店系统摘要随着全球经济一体化的发展和电子商务的兴起,各行业之间的竞争将越来越激烈。网络及电子商务的迅猛发展突破了时间、空间的局限性,给企业带来了更多的发展机会,同时也增大了公司之间的竞争强度。本文以在线图书购销存为例,阐述了网上书店系统的给企业带来的方便快捷。网上书店系统是典型的电子商务系统。随着我国网络的普及和在线图书购销存的日趋成熟,会有越来越大的消费群体加入到这个行列中来,网购图书市场潜力会得到充分发挥。本系统实现了网站的基本功能,包括会员的注册登录、查看网站内的图书详情、查看公告、添加购物车并查看订单以及管理员对于图书的管理、订单的管理、库存的管理等。本系统采用java语言编程,以my eclipse为开发工具, JSP作为网站开发技术,主要是结合系统设计意义以及对Internet在商业中的应用与发展做一下介绍。系统页面友好,操作简单,容易上手。关键词:JSP;Internet;hibernate;struts;网上书店Online bookstore system based on Hibernate and strutsAbstractWith the development of global economic integration and the development of electronic commerce, the industry wills increasingly fierce competition between. The rapid development of Internet and e-commerce breakthrough in time and space limitations, brings more development opportunities to enterprises, but also increases the intensity of competition among enterprises. In this paper, the online book purchase and sale as an example, expounds the online book purchase and sale system brings the convenience.Online book purchase and sale system is a typical e-commerce systems. With the popularity of the Internet and online book purchase and sale is becoming more and more mature, there will be more and more consumer groups to join the ranks of online shopping, the market potential will be given full play. This system realizes the basic function of the site, including registration, membership view sites within the book details, view the announcement, add shopping cart and view orders as well as the administrator for the library management, order management, inventory management etc.The system uses the Java language programming, uses my eclipse as development tool, JSP as the web development technology, mainly according to the system design and an overview of the application and development of Internet in business. The system page friendly, simple operation and easy to use.Key words:JSP; Internet; hibernate; struts; online bookstoreii北京邮电大学毕业设计目 录摘要iAbstractii1 绪论11.1 课题的背景、目的与意义11.2 国内外现状11.3 研究内容12 相关技术简介22.1 JAVA的简介22.2 Mysql的简介22.3 MVC模式介绍22.4 基于B/S的体系结构33 系统分析43.1 可行性分析43.2 需求分析43.2.1 业务需求分析43.2.2 会员需求分析43.2.3 运行环境及开发工具54 系统总体设计64.1 系统结构设计64.2 功能模块设计64.2.1 后台模块的功能模块设计64.2.2 前台模块的功能模块设计74.3 数据库设计84.3.1 实体图84.3.2 基本表设计115 系统实现155.1 程序设计155.2 系统页面的设计与实现155.3 会员功能模块的实现155.3.1 会员注册登录模块175.3.2 查看图书模块235.3.3 购物车模块255.3.4 我的订单模块275.3.5 留言交流模块285.4 管理员功能模块的实现285.4.1 管理员登录模块285.4.2 留言管理模块305.4.3 公告管理模块305.4.4 图书类别管理模块315.4.5 图书管理模块325.4.6 订单管理模块345.4.7 库存记录模块375.4.8 会员管理模块386 系统调试与实施416.1 系统测试的重要性416.2 系统测试的方法41结论42参考文献43致谢44外文原文45中文翻译541 绪论1.1 课题的背景、目的与意义随着Internet国际互联网的发展,商务服务已经成为现代企业一项不可缺少的内容。现代企业需要的是一个功能强大的,能提供完善的电子商务服务的动态商务网站。越来越多的人喜欢在网上宣传自己的图书及其他商品,人们也喜欢网上购物。1.2 国内外现状计算机网络的出现使我们的生活巨大的变化,从过去只面向专业部门的信息传送扩展到现代生活的各个领域,它为全人类的发展和变革做出了无可估量的贡献。网络渐渐的从人们极少了解的领域来到了全球平常人的生活中。多年来国家十分重视企业的信息化建设,并做了大量工作,但目前企业开始实施信息化的比例还不到30%。所以进销存管理系统的实现是一个非常迫切的需求。利用售后管理系统来对企业商品属性、业务等相关信息就行智能化管理。1.3 研究内容这次设计实现了一个在线图书购销存网站。在线图书购销存所承载的信息量大、购物流程比较繁琐,而且互联网中日益肆虐的黑客和病毒对网络的安全性提出了更高的挑战。开发出的网上书店系统采用国际先进的JSP进行开发,具有很高的稳定性和安全性。网上书店系统真正实现了在网络上经营的销售模式,从而使其获得更大的市场机遇和经济效益,很大程度地提高了企业的核心竞争力。这个网上书店系统所需要的功能从会员角度进行划分,可以分为前台会员功能和后台管理功能。会员功能主要提供给商城的会员使用,包括会员的注册、登录、查看图书详情、查看公告、添加购物车,查看订单、留言等;后台管理功能主要提供给系统的管理人员使用可以对会员管理、图书管理、图书类别管理、订单的管理、库存的盘点等。2 相关技术简介2.1 JAVA的简介Java平台由Java虚拟机(Java Virtual Machine)和Java 应用编程接口(Application Programming Interface、简称API)构成。Java 应用编程接口为Java应用提供了一个独容易哭立于操作系统的标准接口,个可分为基本部分和扩展部分。Java分为三个体系JavaSE(Java2 Platform Standard Edition,java平台标准版),JavaEE(Java 2 Platform,Enterprise Edition,java平台企业版),JavaME(Java 2 Platform Micro Edition,java平台微型版)。Java的诞生是对传统计算机模式的挑战,对计算机软件开发和软件产业都产生了深远的影响,看到了Java对信息时代的重要性,未来还会不断发展,Java在应用方面将会有更广阔的前景。2.2 Mysql的简介MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,这样就增加了速度并提高了灵活性。MySQL的SQL语言是用于访问数据库的最常用标准化语言。Mysql是数据库领域的中间派。有比类似X base记录存储引擎更多的特征。企业级RDBMS那样需要一个中积极的服务者守护程序,但是不学太卡能他们那样消费资源。查询语言允许复杂的连接(join)查询,但是所有的参考完整必须由程序员强制保证。 MySQL在Linux世界里找到一个位置提供简洁和速度,同时仍然提供足够的功能使程序员高兴。数据库功能和广泛的客户库,数据库会觉得系统缺乏主要数据库功能,他们会发觉它对库(在不能保证购买大牌数据库时)是有价值的。2.3 MVC模式介绍MVC就是按照职责不同将程序划分为3个组成部分.可以改善程序结构,便于日后维护和扩展,MVC模式图如图2-1所示。(1)M-Model 模型 模型(Model)的职责是负责业务逻辑。业务数据和业务处理逻辑。比如实体类、DAO、Service都属于模型层。(2)V-View 视图 视图(View)的职责是负责显示交互(收集会员信息)。属于视图的类是不包含业务逻辑和控制逻辑的JSP(如果在JSP页面中有就能算是视图层的类,戒者JSP中有转发和戒者重定向的控制逻辑也是可以的)。(3)C-Controller 控制器 控制器是模型层M和视图层V间的桥梁,用于控制流程。 (5)将Request 转给JSP(4)将数据放到Request中(3)调用DAO增加显示JSPServletDAOJSPJSP(1)请求提交给控制器(2)分发请求图2-1 MVC模式图2.4 基于B/S的体系结构在B/S体系结构8系统中,会员通过浏览器向分布在网络上的许多服务器发出请求,服务器对浏览器的请求进行处理。B/S结构简化了工作,会员机上只需配置少量的会员端软件。服务器将担负更多的工作,对数据库和应用程序的执行将在服务器上完成。这样会员机的压力减轻了,把负荷分器。这种三层体系结构如图2-2所示。 Browse浏览器Web服务器数据库图2-2 B/S三层架构示意图这种结构不仅把会和不断对其提高的性能的要求分给了功能服务器,使一下子不再负责处理复数据访问等关键事务,只负责显示部分,维护工作,而把主要精力放在功能服务器上程序的更新工作。这种三层结构在层与层之间相互独立,任何一层的改变不会影响其它层的功能。3 系统分析3.1 可行性分析可行性分析是在全面调查的基础上,针对系统的开发是否具备必要性和可能性,对系统的开发从运行、经济、技术的方面进行分析和研究,以避免投资失误,保证新系统开发成功。(1)技术可行性目前网站建设的技术完善,并且网络上都有许多网站建设的模板供参考。由于在学习数据库时一直以Mysql作为例子,所以采用 Mysql作为数据库的后台。(2)经济可行性开发该系统所需的相关资料可以通过已存在的相关系统进行调查采集,所需的其他应用软件、硬件系统也易于获得,可以节省不少人力、物力及财力。(3)时间可行性本次网站开发为期三个月时间,在大学几年多学习了相关的网站开发技术,编写代码不会花费太多的时间,因此开发时间足够。3.2 需求分析3.2.1 业务需求分析建设一个宣传自身图书形象的电子商务营销模式的网站是一种有效的营销方法。完善企业销售与服务的环节,最终提升企业的价值与经济效益。3.2.2 会员需求分析这个网站以上面的业务需求为基础,进一步提出网站需要完成的以下任务:网站需要让供应商、会员以及浏览者能清晰的看到商城的信息及动态,另一个重要的内容就是能够显示出该商城现有的各类型图书及其详细信息功能需求分析。根据上面的需求分析,需要设计出网站的前台与后台。会员在前台所浏览的内容,网站的后台需要能相应的做出更新或修改。根据以上的想法,设计出网站的功能:前台会员相关功能主要包括:(1)会员注册、登录;(2)查看商城首页;(3)查看新闻公告;(4)查看图书目录;(5)查看特价促销;(6)添加购物车;(7)查看订单;(8)留言交流(9)查看个人信息等。后台管理相关功能主要包括:(1)公告管理;(2)图书类别管理;(3)图书管理;(4)订单管理;(5)查看库存记录;(6)库存盘点;(7)销售统计;(8)留言管理;(9)会员管理;(10)图片管理;(11)密码修改等。将以上这些功能制作成网页以后,在其中分别互相建立分类,基本完成商城及会员对网站的要求。3.2.3 运行环境及开发工具操作系统:Windows 2000/win7。数据库:Mysql。Web应用服务器:Tomcat6.0。开发工具:My eclipse。584 系统总体设计4.1 系统结构设计根据软件设计的需要,我们将把网站划分为前台、后台。前台中,会员在登录网站主页后即可分类查看到图书等信息,也可以把自己喜欢的图书进行购物车的添加。管理员的主要操作主要对图书的管理、订单的管理、库存等的管理。4.2 功能模块设计4.2.1 后台模块的功能模块设计管理模块的功能是对站内的资源进行管理和维护。以后台的业务流程分析和前台各个模块的设计为基础、根据会员的需求分析来确定后台管理模块应具有的功能。后台管理员模块主要功能如下介绍:(1)公告管理:管理员可以添加公告信息,添加后可以按照公告标题进行搜索,并可以编辑或是删除公告信息。(2)类别管理:管理员在此添加图书的类别信息,添加后可以按照类别名称进行搜索,并可以编辑或是删除类别信息。(3)图书管理:管理员添加图书信息,图图书编号、图片、价格等,添加后可以按照名称进行搜索,并可以编辑或是删除信息。(4)订单管理:管理员可以查看会员的订单详情,可以按照订单号搜索订单,操作发货或是删除订单。(5)库存记录:在此管理员可以看见所有图书的库存信息,出入库数量时间等,并可以按照时间进行查询。(6)库存盘点:管理员可以在此查看图书的库存剩余量,做到及时的增加库存。(7)销售统计:管理员可以查看图书的销售情况,并可以按照图书名称进行搜索。(8)留言管理:会员可以在系统中进行留言,管理员可以做出回复或是删除留言。(9)会员管理:搜索并查看会员的基本信息,可以在此增加资金。(10)密码修改:管理员登陆后可以修改登录密码。后台管理员功能模块图如图4-1所示。后台管理员功能公告管理库存记录订单管理图书管理留言管理密码修改会员管理销售统计类别管理商品库存盘点图4-1 管理员功能模块图4.2.2 前台模块的功能模块设计前台管理模块的功能是根据会员的需求分析来确定的功能。前台管理模块的主要功能模块如下:(1)注册账号:游客需先注册成为会员才可以在系统中购物,注册只需填写用户名、密码、姓名、性别、电话等信息即可完成注册。(2)首页功能:会员登录后进入到系统首页,可以看到图书类别的分类、图书的展示,也可以进行图书的搜索,查看新闻公告、留言板等信息。(3)热销图书:会员登录后可以看见系统中的热销图书信息,包括价格、图片等。可以添加购物车。(4)特价促销:会员可以看见系统中的特价打折图书,可以添加购物车。(5)留言交流:会员可以看见其它人的留言并自己留言(6)购物车:会员在看到自己喜欢的图书后可以添加购物车,在购物车中可以看见所购图书的总价,或是删除购物车中的图书,点击购买订单生成。(7)我的订单:在此会员可以查看自己的订单详情,如数量、价格等,是否付款、发货状态、删除订单等信息。(8)个人信息:会员可以查看或是修改个人注册信息。这样,子模块各自的内容基本设计好。下面可以设计如何将这些模块组织在一起,构成一个结构比较合理的后台了。除了在主页中建立面向其他模块的分类外,也要在其他模块中建立返回主页面的分类。另外各个模块间也应该互相分类起来。会员的功能模块图如图4-2所示。前台会员功能会员注册特价促销图书目录新闻公告我的订单图书搜索个人信息购物车会员登录商品留言交流图4-2 会员功能模块图4.3 数据库设计4.3.1 实体图本系统的实体图如图4-3至图4-11所示。(1) car 购物车实体图car主键图书id数量会员id图4-3 购物车实体图(2) kcrecord 库存记录实体图kcrecord主键图书id 出入 库数量 类型时间图4-4 库存记录实体图(3) msg 留言实体图msg主键留言内容回复发布日期留言人id人id图4-5 留言实体图(4) notice 新闻公告实体图notice主键公告标题公告内容发布日期类型图4-6 新闻公告实体图(5) order 订单的实体图order订单id付款状态订单时间价格订单人id订单图书电话类型发货状态地址Id才主键图4-7 订单的实体图(6) product 图书实体图product价格是否删除详情所属类别作者图书编号图书名称主键Id才图片图4-8 图书实体图(7)protype 图书类别实体图protype主键类别名称是否删除图4-9 图书类别实体图(8)sales 销售实体图sales主键图书id销售量时间图4-10 销售实体图(9)sysuser 用户实体图sysuser性别是否删除电话年龄主键密码地址 类型资金用户名姓名图4-11 用户实体图4.3.2 基本表设计表的设计是这次设计的一个核心内容。网站中所用到的数据信息基本包括:图书信息、图书类别信息、新闻公告信息、订单信息、留言信息等。下面是为数据库设计的表:(1)购物车表car此表是用来存储主键、图书id、数量等信息,结构如表4.1所示。表4.1 购物车表名称数据类型长度备注idint11主键productidvarchar255图书idnumvarchar255数量memberidvarchar255会员id(2)库存记录表kcrecord用来存储主键、图书id、出入库数量、类型、时间的信息,具体表如下表4.2所示。表4.2 库存记录表名称数据类型长度备注idint11主键productidvarchar255图书idnumvarchar255出入库数量typevarchar255类型savetimevarchar255时间(3)留言表 msg留言表用来记录留言内容、回复、发布日期等信息,具体表如下4.3所示。表4.3 留言表名称数据类型长度备注idint11主键contentvarchar255留言内容replyvarchar255回复savetimevarchar255发布日期memberidvarchar255留言人id (4)新闻公告表 notice用来记录公告标题、内容、日期等信息,具体表如下4.4所示。表4.4 新闻公告表名称数据类型长度备注idint11主键titlevarchar255公告标题contenttext0公告内容savetimevarchar255发布日期typevarchar255类型(5)订单表order订单表用来记录订单图书的具体信息。表的结构如表4.5所示。表4.5 订单表名称数据类型长度备注idint11主键orderidvarchar255订单idproinfovarchar255订单图书memberidvarchar255订单人idpricevarchar255价格savetimevarchar255订单时间fkstatusvarchar255付款状态fhstatusvarchar255发货状态telvarchar255电话addrvarchar255地址typevarchar255类型(6)图书表product用来记录图书名称、编号、图片、价格、作者、详情等信息,具体表如表4.6所示。表4.6 图书表名称数据类型长度备注idint11主键pronamevarchar255图书名称pronovarchar255图书编号imgvarchar255图片pricevarchar255价格field1varchar255作者protypevarchar255所属类别remarktext0详情delstatusvarchar255是否删除(7)图书类别表 protype图书类别表主要存储类别名称、是否删除信息,具体如表4.7所示。表4.7 图书类别表名称数据类型长度备注idint11主键typenamevarchar255类别名称delstatusvarchar255是否删除(8)销售表 sales销售表主要存储图书id、销售量、时间等信息,具体如表4.8所示。表4.8 销售表名称数据类型长度备注idint11主键productidvarchar255图书idnumvarchar255销售量savetimevarchar255时间(9)用户表sysuser主要存储用户名、密码、姓名、性别、电话、地址等信息,具体如表4.9所示。表4.9 用户表名称数据类型长度备注idint11主键unamevarchar255用户名upassvarchar255密码realnamevarchar255姓名sexvarchar255性别agevarchar255年龄telvarchar255电话addrvarchar255地址delstatusvarchar255是否删除typevarchar255类型jifenvarchar255资金5 系统实现5.1 程序设计本系统应用服务器端JSP动态网页技术,结合会员端动态网页技术Java script无缝结合的设计,从而方便系统的实现。5.2 系统页面的设计与实现随着科技的高速发展,众多网页制作的应用软件应运而生。相对于传统的动态网页开发工具而言,由于继承了Java语言的许多优点,用JSP开发动态网站十分方便,开发效率较高。5.3 会员功能模块的实现整个系统分为了会员功能模块和管理员功能模块。下面详细讨论主要的几个功能模块的程序实现。在每个模块的介绍中,将具体说明一些涉及要点。会员主要具有以下功能:(1)注册账号:游客需先注册成为会员才可以在系统中购物,注册只需填写用户名、密码、姓名、性别、电话等信息即可完成注册。(2)首页功能:会员登录后进入到系统首页,可以看到图书类别的分类、图书的展示,也可以进行图书的搜索,查看新闻公告、留言板等信息。(3)热销图书:会员登录后可以看见系统中的热销图书信息,包括价格、图片等。可以添加购物车。(4)特价促销:会员可以看见系统中的特价打折图书,可以添加购物车。(5)留言交流:会员可以看见其它人的留言并自己留言。(6)购物车:会员在看到自己喜欢的图书后可以添加购物车,在购物车中可以看见所购图书的总价,或是删除购物车中的图书,点击购买订单生成。(7)我的订单:在此会员可以查看自己的订单详情,如数量、价格等,是否付款、发货状态、删除订单等信息。(8)个人信息:会员可以查看或是修改个人注册信息。首页运行结果如图5-1所示。图5-1 会员首页运行结果主要代码如下:/主页面图书展示more%ArrayList productlist = (ArrayList)dao.findByHql( from Product where delstatus=0 order by id desc limit 0,12);int a = 0;for(Product product:productlist )a+;%A href=/zxtsgx/productDetail.jsp?id= title=IMG border=0 src=/zxtsgx/upfile/ A href=/zxtsgx/productDetail.jsp?id= title=10)proname = product.getProname().substring(0,10)+.;elseproname = product.getProname();%价格: 特价:价格:5.3.1 会员注册登录模块会员管理模块主要实现会员的注册、登录、修改个人信息等功能。(1)会员注册当会员第一次登录时首先要在网站上注册,成为会员才可以在网站上商城,注册页面必须填写一些会员的基本信息,如会员名、密码、联系电话等信息。会员注册页面如图5-2所示。图5-2 会员注册页面运行结果为了便于网站对会员的管理,在会员注册页面接收到的注册信息要经过严格的过滤,则在插入数据表时提示注册成功,否则提示此会员已被占用请重新注册。主要代码如下:/用户注册前台页面个人信息用户名密码 *重复密码 *姓名 *性别男女年龄 电话 *地址 /定义一个变量用于存放XMLHttpRequest对象var xmlHttp; /该函数用于创建一个XMLHttpRequest对象function createXMLHttpRequest() if (window.ActiveXObject) xmlHttp = new ActiveXObject(Microsoft.XMLHTTP); else if (window.XMLHttpRequest) xmlHttp = new XMLHttpRequest(); /这是一个启动AJAX异步通信的方法function checkname() if(f1.uname.value=) alert(请输入用户名); return false; /创建一个XMLHttpRequest对象 createXMLHttpRequest(); /将状态触发器绑定到一个函数 xmlHttp.onreadystatechange = processor; /通过GET方法向指定的URL建立服务器的调用 xmlHttp.open(GET, check.action?uname=+f1.uname.value+&timeStamp=+new Date().getTime(); /发送请求 xmlHttp.send(null);function processor () /定义一个变量用于存放从服务器返回的响应结果 var responseContext; if(xmlHttp.readyState = 4) /如果响应完成 if(xmlHttp.status = 200) /如果返回成功 /取出服务器的响应内容 responseContext = xmlHttp.responseText; /如果注册名检查有效 if ( responseContext.indexOf(1) ) document.getElementById(namets).innerHTML=; document.getElementById(namets).style.cssText= font-size:11px;color:green; document.all.regsubmit.disabled=false; else document.getElementById(namets).innerHTML= 已存在的用户名; document.getElementById(namets).style.cssText= font-size:11px;color:red; document.all.regsubmit.disabled=true; function InitAjax() var ajax=false; try ajax = new ActiveXObject(Msxml2.XMLHTTP); catch (e) try ajax = new ActiveXObject(Microsoft.XMLHTTP); catch (E) ajax = false; if (!ajax & typeof XMLHttpRequest!=undefined) ajax = new XMLHttpRequest(); return ajax; f

温馨提示

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

评论

0/150

提交评论