还剩33页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
毕业论文(设计)题目汽车配件销售管理系统姓名赵鹏学号1009064032所在院系数学与计算机科学学院专业班级信息与计算科学1101班指导教师张瑞林完成地点陕西理工学院2015年6月6日汽车配件销售管理系统赵鹏陕理工数计学院信计1101班,陕西汉中723000指导老师张瑞林[摘要]随着二十一世纪信息时代的到来,信息技术发展越来越快,下一代国际互联网技术正向我们走来,计算机网络的安全性、可靠性和速度等都有质的飞跃,网上购物将具有普遍性,并被越来越多的人所接受,优质的商品在各个区域之间实现共享成为可能,随时随地的购物也能真真得以实现传统的购物方式势必会受到严峻的挑战网上购物面临着这一千载难逢的机会,必须加强网上购物软件的研究开发工作,让更安全、更完善,更便捷的软件系统应用到网上购物当中去网上购物又涉及很多环节,汽车配件销售系统就是其中之一,目前网上汽车配件销售系统很多,亚马逊,淘宝等就是最有影响的案例,但是网上购物体验差异很大,存在的问题也很多,例如商品的质量不能保证等,所以说在线的销售系统开发仍任重而道远在线购物系统是现阶段研究开发的一个热点它是建立在国际互联网上的应用系统,客户端的配置很简单,使购物不受地域的限制,一个完备的在线销售系统可以使用户在网上买到物美价廉的商品从近年来人们在线买商品的比重,以及人们的快节奏的生产生活方式来看,网上购物仍然会在以后很长一段时间内作为发展的主流,会有更多的公司加入到网上销售当中去,所以说其经济性和实用性都是很高的本毕业设计的内容是设计并且实现一个基于Javaweb技术的网上汽车配件在线销售系统,因此系统主要以J2EE作为开发基础主要使用了struts2+spring+hibernate等多种框架的结合使用,用myeclipse2014作为开发工具,以MYSQL
5.6作为数据库,以Macromedia公司的DreamweaverCS6作为界面美化工具,使用JAVA语言开发,页面采取JSP动态页面开发技术该系统界面友好、操作方便,易懂且技术人员的日常维护比较容易关键词网上购物S.S.HStruts2HibernateSpringJAVAJ2EE,JSPAutopartssalesmanagementsystemAuthor ZhaoPengGrade04Class1101MajorInformationandComputingSince,MathandComputingSinceDept.,ShaanxiUniversityofTechnology,HanZhong723000,ShaanxiTutor ZhangRuiLinAbstract:Withthedawnofthetwenty-firstcenturyinformationagemoreandmorerapiddevelopmentofinformationtechnologythenextgenerationofInternettechnologytowardusthesecurityofcomputernetworksreliabilityandspeedhaveaqualitativeleaponlineshoppingwilluniversalandwasacceptedbymoreandmorepeoplethequalityofgoodspossiblesharingbetweenthevariousregionsBarbarashoppinganytimeanywherecanberealized.Thetraditionalwayofshoppingisboundtobechallenges.Onlineshoppingisfacingtheopportunityofalifetimewemuststrengthentheonlineshoppingsoftwareresearchanddevelopmentworkmakesaferbetterandmoreconvenientonlineshoppingsoftwaresystemisappliedtothemtogo.OnlineshoppingalsoinvolvesalotoflinksautopartssalessystemisoneofthemtherearemanyonlineautopartssalessystemAmazonTaobaoisthemostinfluentialofthecasebutonlineshoppingexperienceverydifferenttheproblemsaremanysuchasWecannotguaranteethequalityofgoodsandsoonsothatthedevelopmentofonlinesalessystemisstilllongwaytogo.Onlineshoppingsystemisahotresearchanddevelopmentstage.ItisbuiltapplicationsontheInternettheclientconfigurationisverysimpletomakeshoppingwithoutgeographicalconstraintsacompleteonlinemarketingsystemallowsusersontheInternettobuyinexpensivegoods.Inrecentyearspeoplebuygoodsfromonlineshareaswellaspeoplesfast-pacedlifestyleofviewofproductiononlineshoppingwillstillbeinthefutureforalongperiodoftimeasthemainstreamofdevelopmenttherewillbemorecompaniestojointhemtogoonlinesalessothattheireconomyandpracticalityarehigh.Thecontentsofthisgraduationprojectistodesignandimplementatechnology-basedJavawebonlineautopartsonlinesalessystemsothesystemmainlytoJ2EEasadevelopmentwasmainlyusedincombinationwithstruts2+spring+hibernateandotherframeworksasdevelopedbymyeclipse2014toolstoMYSQL
5.6asadatabasetoMacromediasDreamweaverCS6asinterfacelandscapingtoolslanguagedevelopmentusingJAVAJSPpagestotakedynamicpagedevelopmenttechnology.Thesystemisuser-friendlyeasytooperateeasytounderstandandroutinemaintenancetechnicianeasier.Keywords:onlineshoppingSSHStruts2HibernateSpringJAVAJ2EEJSP目录TOC\o1-3\h\z\u1项目概述
51.1系统研究的目的及意义
51.2系统的目标52开发环境及数据库概述
52.1MyEclipse2014介绍
52.2数据库简介
62.3服务器介绍
62.4JSP简介73系统开发思想与技术
73.1MVC模式以及系统的基本框架
73.2SSH框架的有点
73.
2.
1.Struts2框架
83.
2.
2.Spring
3.0框架
83.
2.
3.Hibernate
4.0框架
93.3系统总体设计
103.
3.1总体功能模块
103.
3.2用户功能模块
103.
3.3管理员功能模块
113.4系统业务描述
113.4程序流程图124系统详细设计
124.1系统和数据库配置
124.2概念模型设计
134.3系统流程图
144.
3.1系统流程图的符号
144.
3.2系统业务流程图
144.4数据库逻辑模型
154.5数据库表结构175系统功能实现
205.1分类模块时序图
205.2公告时序图
205.3商品模块时序图
215.4系统功能实现的主要框架
215.
4.1SSH框架
215.
4.2Hibernate配置文件
215.
4.4Spring配置文件
235.5系统功能实现的主要模块
245.
5.1系统登陆模块
245.
5.2商品分类管理模块
255.
5.3商品管理模块276系统的测试与调试
286.1软件测试分类
286.2软件测试的任务
296.3测试环境
296.4测试环境配置
296.
4.1创建安装项目
296.
4.2添加项目输出
306.
4.3运行项目31总结32致谢33参考文献341项目概述
1.1系统研究的目的及意义随着Internet逐渐渗透入人们工作、生活中的各个角落一种新的事物——电子商务ElectronicCommerce代表着人类进步的趋势得到大家的认同电子商务是利用现代信息网络进行商务活动的一种先进手段,作为创新的经济运行方式,其影响已经远远超过商业领域它对人类社会进行着全方位的改造,在各方面改变着人类相互交往的方式,为人们展示了一个全新、璀璨的世界电子商务的投资和运营成本相较传统商务活动非常低廉,通常只有传统方式的百分之几,这也是电子商务能在短短几年中迅速席卷全球的重要原因利用电子商务企业可以构筑覆盖全球的商业营销体系,实施全球性的营销战略,增强全球性竞争能力电子商务已成为推动未来经济增长的最关键动力它的发展,不仅能够有力地推动Internet的发展,而且对社会的进步和经济的变革产生深远影响,更重要的是,它本身的发展和成熟为我们提供了许许多多的机会另外,随着人们生活水平的不断提高,拥有汽车的人越来越多很多汽车配件销售公司的业务环节仍然运用人工记账的传统方法,既容易出错又会导致账目混乱,查询和统计起来也非常不方便,费时又费力,严重时会给公司造成难以挽回的损失如何管理好这些,使整个公司协调一致、高效率地运转,是各公司急待解决的问题汽车配件销售管理系统不但能使各业务环节协调一致,而且操作简单,账目清晰通过账目查询,公司能在最短的时间内获得市场信息,从而制订相应的决策因此,该系统主要根据实际需求,划分了商品管理,会员管理,订单处理,统计报表,系统设置五大模块,采用B/S模式实现了从多个环节数据的跟踪管理服务,基本上满足了汽车配件销售管理流程综上所述本系统具有很大的开发价值和意义
1.2系统的目标汽车配件电子商务销售网站要实现的功能非常多,最重要的就是管理员对配件的管理实现和用户的购物的实现;这其中就包括管理员对配件的添加,对配件的归类,对用户购物订单的处理,以及管理员对网站的维护操作,以及对于销售商品的统计至于用户主要是在线浏览所有配件,按需求搜索相关配件,以及注册为会员后对个人购物车的操作,购物结束后生成订单信息的查看整个系统对从用户购物到结款,管理员从管理网站、管理配件,处理订单都设计的非常精细完全是一套功能完善的汽车配件电子商务销售网站2开发环境及数据库概述本系统的开发采用JSP技术,数据库管理系统使用MYSQL
5.6开发工具使用MyEclipse2014,服务器采用TOMCAT
8.
02.1MyEclipse2014介绍本平台所用到的开发工具就是知名的JAVAIDEMyEclipse2014MyEclipse2014企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对免费的开源的项目EclipseIDE的一种扩展,MyEclipse2014中集成了数据库插件以及J2EE插件,所以对于JAVAWEB的开发、发布,以及在应用程序服务器的整合的工作效率都比较高MyEclipse2014是一个功能非常丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTMLStruts2Spring,HibernateJSPCSSJavaScript在结构上,MyEclipse2014的特征可以被分为7类J2EE模型,WEB开发工具,EJB开发工具,应用程序服务器的连接器,J2EE项目部署服务,数据库服务,MyEclipse2014都可以帮助整合使得项目开发更加便捷周期更短对于以上每一种功能上的类别,在EclipseIDE开源项目中都有相应的功能插件,并通过一系列的插件来实现它们MyEclipse2014只是帮助使用者在EclipseIDE的基础上把这些结构模块化,并整合在一起,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级简单而言,MyEclipse2014是整合一些JavaWeb方面开发的插件的EclipseIDE,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及除错
2.2数据库简介数据库使用的是MySQL
5.6开源数据库MySQL
5.6的特性使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性支持LINUX、MacOS、OpenBSD、Windows、LIKEUNIX等多种操作系统为多种编程语言提供API这些编程语言包括C、C++、Java、Perl、PHP、Python和Ruby等支持多线程充分利用CPU资源优化的SQL查询算法,有效地提高查询速度既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持常见的编码如中文的GB2312,GB23030,BIG5,UTF-8等都可以用作数据表名和数据列名提供TCP/IP、ODBC和JDBC等多种数据库连接途径提供用于管理、检查、优化数据库操作的管理工具可以处理拥有上千万条记录的大型数据库
[6]MySQL
5.6的应用与其他的大型数据库例如Oracle、DB
2、SQLServer等相比,MySQL
6.5有它的不足之处,比如数据量小、功能有限,效率较低等,但是这并不影响它受欢迎的程度对于一般的个人使用者和中小型企业来说,MySQL
5.6提供的功能已经绰绰有余,而且由于MySQL
5.6是开放源码软件,不仅可以大大降低总体成本而且用户还可以根据自己的需求对数据库的功能实现定制功能编译更加节省资源极大的提高运行效率和贴合系统硬件,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境
2.3服务器介绍Tomcat
8.0是一个开源的且运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能的开源服务器软件,很受广大程序员的喜欢;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以根据自己的需求自己更改它或在其中加入新的功能,使得对于自己所想要的功能实现定制Tomcat
8.0是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选一台机器上配置好Apache服务器,则这台计算机则可以看成是一个WEB的Server实际上Tomcat
8.0部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat
8.0时,它实际上作为一个与Apache独立的进程单独运行的,不影响Apache的其他功能Apache可以使计算机成为HTML服务器,而Tomcat
8.0实际上运行JSP页面和Servlet另外,Tomcat
8.0和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式,如何可以根据情况对Tomcat
8.0进行设置决定是否在项目启动时就初始化Servlet,从而提升项目的运行效率
2.4JSP简介JSP全名为JavaServerPages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件*.htm*.html中插入Java程序段Scriptlet和JSP标记tag,从而形成JSP文件,后缀名为*.jsp用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行
[2]它实现了Html语法中的java扩张(以%%形式)JSP与Servlet一样,是在服务器端执行的通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易JSPJavaServerPages是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来JavaServlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点
[3]3系统开发思想与技术
3.1MVC模式以及系统的基本框架本系统采用JAVAWEB技术,基于MVC开发模式,使用SSH框架(struts
2、spring
3.
0、hibernate
4.0)来增加系统的开发速度MVC开发模式是Model-View-Controller的缩写,就是模式-视图-控制器程序就是用struts2和hibernate
4.0这两个框架来实现模型层(Model)和控制器(Controller)这两层,jsp实现视图(View)这一层一般来说程序就是在数据库和页面之间起桥梁作用以及为页面提供数据支持,jsp页面请求先到action,再到dao,再回到action,回到jsp页面,action主要处理来自页面的请求,dao主要是和数据库的交互,struts2主要用在action,处理来自页面的请求,处理完请求后跳转回页面Hibernate
4.0主要用在dao,包括对数据库的增、删、改、查的操作,使得程序对数据库的访问变得简单容易,使原来的面向字段的数据库JDBC连接变成为面向对象的连接,操作数据库更简单明了spring
3.0控制程序的流程,它决定了项目中各个部件的初始化时机
3.2SSH框架的有点SSH框架是J2EE应用中Struts2+Spring
3.0+hibernate
4.0三大免费开源框架的结合使用它既是工具,也是中间件他可以极大的提高我们的开发效率,提高我们软件产品的可维护性、可扩展性乃至敏捷性的他们里面有很多优秀的设计理念及模式应用比如,struts2属于MVC框架,关键是要了解MVC的概念及大致原理;而hibernate
4.0属于ORM系统,属于持久层的解决方案,同样需要对ORM的概念及原理有一个总体的了解而spring
3.0属于应用程序框架,其核心是IoC容器以及AOPSpring
3.0中还集成了很多适用东西,比如对JDBC的封装、自己的SpringMVC、HibernateTemplate和对动态语言的简洁访问等它由以下3个框架构成:
3.
2.
1.Struts2框架Struts2是Apache组织的一个开放源码项目Struts2是一个比较好的MVC框架,提供了对开发MVC系统的底层支持,它采用的主要技术是Servlet,JSP和Customtaglibrary其基本构成如图所示
3.
2.
2.Spring
3.0框架Spring
3.0是一个开源框架,Spring是于2003年兴起的一个轻量级的Java开发框架,由RodJohnson在其著作ExpertOne-On-OneJ2EEDevelopmentandDesign中阐述的部分理念和原型衍生而来它是为了解决企业应用开发的复杂性而创建的框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为J2EE应用程序开发提供集成的框架Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情然而,Spring的用途不仅限于服务器端的开发从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益Spring的核心是控制反转(IoC)和面向切面(AOP)简单来说,Spring是一个分层的JavaSE/EEfull-stack一站式轻量级开源框架Spring框架由以下7个部分组成
3.
2.
3.Hibernate
4.0框架Hibernate
4.0是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP完成数据持久化的重任
3.3系统总体设计
3.
3.1总体功能模块本系统分系统管理员和用户两个模块,总功能图如下所示
3.
3.2用户功能模块用户模块的主要功能是用户注册登录功能、商品浏览功能(分类浏览,推荐浏览,搜索浏览)、、购物车管理、公告浏览订单管理用户模块的功能如下图所示
3.
3.3管理员功能模块系统管理员的主要功能有分类管理、注册用户管理、网站公告管理、商品管理、订单管理管理员的功能如下图所示
3.4系统业务描述本系统分系统管理员和用户两个角色系统管理员的主要功能有分类管理、商品管理、注册用户管理、网站公告管理、订单管理,销售统计等;用户模块的主要功能是注册登录功能、公告、浏览商品(分类浏览,推荐浏览,搜索浏览)、购物车管理、订单管理用例图如下:
3.4程序流程图用户登录流程图4系统详细设计
4.1系统和数据库配置系统按通用的B/S(浏览器、服务器)模式进行设计(如图下图)
4.2概念模型设计概念模型设计使用的方法是用EER图方法,即用扩展实体-关系模型模型表示EER方法是用EER图来描述显示世界,EER图包含四个个基本成分实体、联系、属性,在E-R图的基础上增加了子类的概念它直观易懂,能够比较准确地反映现实世界的信息联系,从而能从概念上表示一个数据库的信息组织情况,是目前最新的一种数据库模型
[5]本系统EER图如下
4.3系统流程图
4.
3.1系统流程图的符号表
4.1系统业务流程图符号符号名称说明处理能改变数据值或数据位置的加工或部件输入/输出表示输出或输出的报表存储表示存储的帐册实体数据的源点/终点数据流用于连接其他符号,指明数据流动方向
4.
3.2系统业务流程图系统前台业务流程图系统后台业务流程图
4.4数据库逻辑模型订单表(ID、地址、备注、添加时间、订单删除状态、订单号、手机、姓名、订单状态、订单详情、总价、关联用户的ID)分类表(ID、删除状态、名称)公告表(ID、标题、内容、时间、删除状态)购物车表ID、添加时间、是否删除标志、数量、关联商品的id、关联的用户id商品信息表(ID、添加时间、删除状态、点击数、图片、价格、介绍、名称、是否推荐、商品销量、关联分类的id)用户表(ID、添加时间、删除状态、邮箱、密码、电话、姓名、账号)
4.5数据库表结构1订单表名称类型空备注Idint11No主键addressvarchar255Yes收货人地址Beizhuvarchar255Yes备注createtimedatetimeYes添加时间deletestatusint11No订单删除状态0未删除1已删除orderidvarchar255Yes订单号phonevarchar255Yes收货人手机sjnamevarchar255Yes收货人姓名statusvarchar255Yes订单状态已处理未处理xiangqingvarchar255Yes订单详情zongjiadoubleYes总价useridint11Yes关联用户的ID,外键2分类表名称类型空备注Idint11No主键deletestatusint11No删除状态0未删除1已删除namevarchar255Yes分类名称3公告表名称类型空备注Idint11no主键biaotivarchar255yes公告标题contentvarchar255yes公告内容createtimedatetimeyes添加时间deletestatusint11no删除状态0未删除1删除4购物车表名称类型空备注Idint11no主键createtimedatetimeyes添加时间deletestatusint11no删除状态0未删除1删除numberint11no数量productidint11yes关联商品的id,外键useridint11yes关联用户的id外键5商品信息表名称类型空备注Idint11no主键createtimedatetimeyes添加时间deletestatusint11no删除状态0未删除1删除dianjishuint11no商品点击数imgpathvarchar255yes商品图片JiageDoubleyes商品价格maoshuvarchar255yes商品介绍Namevarchar255yes商品名Tuijianvarchar255yes是否推荐已推荐未推荐xiaoliangint11no商品销量Fenleiidint11yes关联分类的id外键6用户表名称类型空备注idint11no主键addressvarchar255yes地址createtimeDatetimeno添加时间deletestatusint11no删除状态0未删除1删除emailvarchar255yes邮箱passwordDoubleyes密码phonevarchar255yes联系电话qqvarchar255yesQQtruenamevarchar255yes真实姓名usernamevarchar255no用户名7销售日志表名称类型空备注idint11no主键uidint11yes用户IDsaleDatadatetimeno销售日期pidint11yes商品IDtidint11yes类型IDnumint11yes销售数量pricedoubleyes销售数量5系统功能实现
5.1分类模块时序图
5.2公告时序图
5.3商品模块时序图
5.4系统功能实现的主要框架
5.
4.1SSH框架SSH框架就是struts2springhibernate的简称,运用3个框架的集成协作使用,可以有效的提高代码编写的效率,从而有效的降低程序开发的周期
[7]
5.
4.2Hibernate配置文件hibernate-configurationsession-factory!--指定连接数据库用的驱动,对于不同的关系数据库,其驱动是不同的,需要根据实际情况修改--propertyname=hibernate.connection.driver_classcom.mysql.jdbc.Driver/property!--指定连接数据库的路径,对于不同的关系数据库,其URL路径是不同的,需要根据实际情况修改--propertyname=hibernate.connection.urljdbc:mysql://localhost:3306/shoppingcharacterEncoding=utf-8/property!--指定连接数据库的用户名和密码--propertyname=hibernate.connection.usernameroot/propertypropertyname=hibernate.connection.password123456/property!--EchoallexecutedSQLtostdout--propertyname=show_sqltrue/propertypropertyname=format_sqltrue/propertypropertyname=dialectorg.hibernate.dialect.MySQLDialect/property!--EnableHibernatesautomaticsessioncontextmanagement--propertyname=current_session_context_classthread/property!--数据库没有改表的情况下可以自动生成--propertyname=hibernate.hbm2ddl.autoupdate/propertymappingclass=shop.model.User/mappingclass=shop.model.Fenlei/mappingclass=shop.model.Product/mappingclass=shop.model.Gonggao/mappingclass=shop.model.Gouwuche/mappingclass=shop.model.Dingdan//session-factory/hibernate-configuration这是Hibernate的配置文件,在该文件中propertyname=show_sqltrue/propertypropertyname=format_sqltrue/property表示控制台打印SQL语句,并格式化SQL语句propertyname=dialectorg.hibernate.dialect.MySQLDialect/property表示当前数据库使用MYSQL方言mappingclass=shop.model.User/mappingclass=shop.model.Fenlei/mappingclass=shop.model.Product/mappingclass=shop.model.Gonggao/mappingclass=shop.model.Gouwuche/mappingclass=shop.model.Dingdan/都表示当前数据库建立起来的表和类之间的映射关系,比如mappingclass=shop.model.User/表示User类和t_user表之间的建立起来的对应关系,其他也都类似
5.
4.3Struts2文件配置strutsconstantname=struts.objectFactoryvalue=spring/constantconstantname=struts.i18n.encodingvalue=UTF-8/constantpackagename=indexnamespace=/extends=struts-defaultactionname=methodclass=manageActionresulttype=dispatcher${url}/resultresultname=redirecttype=redirect${url}/result/actionactionname=indexmethod=indexclass=indexActionresultname=successindex.jsp/result/actionactionname=indexmethodclass=indexActionresulttype=dispatcher${url}/resultresultname=redirecttype=redirect${url}/result/action/package/struts这是struts的配置文件,该文件的作用主要起到来自JSP的请求的跳转分配的作用该struts配置文件是个总的配置文件
5.
4.4Spring配置文件Spring在本项目中主要用到了IoC的功能,就是把对象实例化!--daos--beanid=userDaoclass=shop.dao.impl.UserDaoImplpropertyname=sessionFactoryrefbean=sessionFactory//property/beanbeanid=fenleiDaoclass=shop.dao.impl.FenleiDaoImplpropertyname=sessionFactoryrefbean=sessionFactory//property/beanbeanid=productDaoclass=shop.dao.impl.ProductDaoImplpropertyname=sessionFactoryrefbean=sessionFactory//property/beanbeanid=gonggaoDaoclass=shop.dao.impl.GonggaoDaoImplpropertyname=sessionFactoryrefbean=sessionFactory//property/beanbeanid=gouwucheDaoclass=shop.dao.impl.GouwucheDaoImplpropertyname=sessionFactoryrefbean=sessionFactory//property/beanbeanid=dingdanDaoclass=shop.dao.impl.DingdanDaoImplpropertyname=sessionFactoryrefbean=sessionFactory//property/bean本段代码是把DAO实例化的代码,通过spring的IoC模式!--actions--beanid=manageActionclass=shop.action.ManageActionscope=prototypepropertyname=userDaorefbean=userDao//propertypropertyname=fenleiDaorefbean=fenleiDao//propertypropertyname=productDaorefbean=productDao//propertypropertyname=gonggaoDaorefbean=gonggaoDao//propertypropertyname=dingdanDaorefbean=dingdanDao//property/beanbeanid=indexActionclass=shop.action.IndexActionscope=prototypepropertyname=gonggaoDaorefbean=gonggaoDao//propertypropertyname=productDaorefbean=productDao//propertypropertyname=userDaorefbean=userDao//propertypropertyname=gouwucheDaorefbean=gouwucheDao//propertypropertyname=dingdanDaorefbean=dingdanDao//property/bean本段代码是把ManageAction和Indexaction实例化的代码,原理也是Spring的IoC模式
5.5系统功能实现的主要模块
5.
5.1系统登陆模块登录界面登陆代码//登入请求publicStringloginthrowsIOException{HttpServletRequestrequest=ServletActionContext.getRequest;Stringusername=request.getParameterusername;Stringpassword=request.getParameterpassword;Useruser=userDao.selectBeanwhereusername=+username+andpassword=+password+anddeletestatus=0;ifuser!=null{HttpSessionsession=request.getSession;session.setAttributeuseruser;this.setUrlmanage/index.jsp;returnredirect;}else{HttpServletResponseresponse=ServletActionContext.getResponse;response.setCharacterEncodinggbk;response.setContentTypetext/html;charset=gbk;response.getWriter.printscriptlanguage=javascriptalert用户名或者密码错误;window.location.href=login.jsp;/script;}returnnull;}本段代码是程序的登陆代码,首先从获取从页面输入的用户名、密码,然后调用userDao.selectBean方法,从数据库里取出该条记录进行判断,如果该条记录存在,则说明用户登陆成功,同时把用户信息存在session里面方便调用,如果记录为空,则跳转到登陆页面,同时提醒用户错误信息
5.
5.2商品分类管理模块商品分类管理模块界面代码如下publicStringfenleilist{HttpServletRequestrequest=ServletActionContext.getRequest;Stringname=request.getParametername;StringBuffersb=newStringBuffer;sb.appendwhere;ifname!=null!.equalsname{sb.appendnamelike%+name+%;sb.appendand;request.setAttributenamename;}sb.appenddeletestatus=0orderbyiddesc;Stringwhere=sb.toString;intcurrentpage=1;intpagesize=10;ifrequest.getParameterpageNum!=null{currentpage=Integer.parseIntrequest.getParameterpageNum;}inttotal=fenleiDao.selectBeanCountwhere.replaceAllorderbyiddesc;request.setAttributelistfenleiDao.selectBeanListcurrentpage-1*pagesizepagesizewhere;request.setAttributepagerinfoPager.getPagerNormaltotalpagesizecurrentpagemethod!fenleilist共有+total+条记录;request.setAttributeURLmethod!fenleiList;request.setAttributeURL1method!fenlei;request.setAttributetitle分类信息管理;this.setUrlfenlei/fenleiList.jsp;returnSUCCESS;}首先通过Stringname=request.getParametername;这句代码从页面获取查询的选项,然后通过ifname!=null!.equalsname{通过这句条件语句分别判断下这个值是否为空,当不为空时则通过StingBuffer来叠加组装查询的sql语句,最后当sql语句组装好了之后,通过fenleiDao.selectBeanList方法来调用数据库的查询方法来查到符合条件的记录,在通过request.setAttribute方法把查询到的记录传到显示的页面同时通过this.setUrlfenlei/fenleilist.jsp;方法指定传回到具体指定的是哪个JSP页面通过这样实现对数据查询功能的实现,同时在该分类列表页面定义了对分类信息的增加,修改,删除等操作
5.
5.3商品管理模块商品管理模块界面代码//商品信息列表publicStringproductList{HttpServletRequestrequest=ServletActionContext.getRequest;Stringname=request.getParametername;StringBuffersb=newStringBuffer;sb.appendwhere;ifname!=null!.equalsname{sb.appendnamelike%+name+%;sb.appendand;request.setAttributenamename;}sb.appenddeletestatus=0orderbyiddesc;Stringwhere=sb.toString;intcurrentpage=1;intpagesize=10;ifrequest.getParameterpageNum!=null{currentpage=Integer.parseIntrequest.getParameterpageNum;}longtotal=productDao.selectBeanCountwhere.replaceAllorderbyiddesc;ListProductlist=productDao.selectBeanListcurrentpage-1*pagesizepagesizewhere;request.setAttributelistlist;Stringpagerinfo=Pager.getPagerNormalinttotalpagesizecurrentpagemethod!productlist共有+total+条记录;request.setAttributepagerinfopagerinfo;request.setAttributeurlmethod!productlist;request.setAttributeurl2method!product;request.setAttributetitle商品信息管理;this.setUrlproduct/productlist.jsp;returnSUCCESS;}首先通过Stringname=request.getParametername;这句代码从页面获取查询的选项,然后通过ifname!=null!.equalsname{、通过这句条件语句分别判断下这个值是否为空,当不为空时则通过StingBuffer来叠加组装查询的sql语句,最后当sql语句组装好了之后,通过productDao.selectBeanList方法来调用数据库的查询方法来查到符合条件的记录,在通过request.setAttribute方法把查询到的记录传到显示的页面同时通过this.setUrlproduct/productlist.jsp;方法指定传回到具体指定的是哪个JSP页面通过这样实现对数据查询功能的实现,同时在该商品列表页面定义了对商品信息的增加,修改,删除等操作
[8]6系统的测试与调试软件测试(英语softwaretesting),描述一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程换句话说,软件测试是一种实际输出与预期输出间的审核或者比较过程软件测试的经典定义是在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程
[12]软件质量是由几个方面来衡量的
1.在要求的时间用要求的方法把一个工作做正确
2.符合一些应用标准的要求,比如不同国家的用户不同的操作习惯和要求,项目工程中的可维护性、可测试性等要求
3.质量本身就是软件达到了最开始所设定的要求以及效率是否符合要求,而代码的优美或精巧的技巧并不代表软件的高质量
4.质量也代表着它符合客户的需要软件在客户使用过程中是否顺手等
6.1软件测试分类
1.单元测试所谓单元测试是指程序中的一个模块或一个子程序,是程序运行的最小单元,或是程序最小的独立编译单位因此单元测试也称模块设计【3】
2.组装测试对每个模块完成了单元测试以后,需要按照设计时作出的模块结构图把它们连接起来,进行组装测试组装测试也称为组合测试或综合测试组装测试主要以系统设计和程序设计为依据,通常采用黑盒测试方法组装测试的策略分为非增式测试和增式测试两大类,增式测试又分为自顶向下、自底向上和混合式三种
6.2软件测试的任务
1.寻找Bug;
2.避免软件开发过程中程序员忽略的错误;
3.衡量软件的品质;
4.关注用户的需求总的目标是确保软件的质量
6.3测试环境Apache提供的Web服务器Tomcat
8.0使得用户可以在Windows7以上操作系统下发布自己设计的动态网页因此对项目的调试工作主要是利用Tomcat
8.0的强大功能在本机下完成的为了在本机下浏览Web页面,首先在创建该系统的站点上(该系统使用的是Web的默认站点)将IP地址设定为
127.
0.
0.1,它的缺省域名值为localhost然后向IE浏览器输入本地动态网页的URL并在默认的端口8080,Web服务器在收到浏览器传送的URL之后找到网页文件,并在服务器端执行该文件后将此文件以HTML文件的结果返回给浏览器显示
6.4测试环境配置经过确认测试后,软件已测试完毕,然后软件只是信息系统的一个组成部分,还要与系统的其他部分配套运行系统测试是将信息系统的所有组成部分包括软件、硬件、用户的实际运行现场,在用户的直接参与下进行系统测试是面向集成的整个系统
6.
4.1创建安装项目要对一个应用程序进行打包部署,首先需要把tomcat
8.0服务器集成到myeclipse2014开发工具
(1)点击windowpreferences,弹出对话框,如图所示在文本框里输入tomcat选择tomcat选项,选择tomcat
8.X,并选择tomcat文件的路径,点击enable,使这个设置为有效的如下图所示最后点击确认完成tomcat
8.xserver的添加
6.
4.2添加项目输出选择部署按钮,弹出如下对话框,在project里选择需要部署的项目之后点击add按钮,弹出如下对话框,Server选择tomcat
8.X,最后点击finish完成部署
6.
4.3运行项目首先点击server窗口,如图,右键点击tomcat
8.x,点击runServer,则开始运行tomcat
8.0Server当控制台不在有新的信息输出时说明部署成功总结随着电子商务和信息技术的快速发展,电子商务网站已经逐渐成为学生生活中的一种购物方式电子商务网站涉及到Web技术、数据库技术以及现在出现的中间件技术通过参加电子商务网站的建设,在不断摸索尝试的过程中,我们基本掌握了建设一个电子商务系统的大致流程和应该关注的重点方向我进行了用户注册、登陆、后台管理如对配件、用户、管理员的添加、删除、修改,销售情况统计等的相关设计,了解了前后台是如何连接的一系列流程,掌握了怎样进行动态网页的设计老师有效指导使这个课题能够顺利进行,使得系统更加完美但是,由于时间仓促,对于网站建设中的一些细节问题考虑的还是比较差,不够全面例如网上付款的问题不能使双方满意等等同时在这次毕业设计的过程中我受益非浅,深深的体会到了如何把自己所学过的专业知识与实际应用结合起来,通过本次毕业设计使自己的知识得以巩固和扩展我们会打足精神,努力开创新的成绩,勇敢的面对以后发生的一切,更好的提高自己,近而体现自己在社会发展中的价值在这次做这个软件的过程中也遇到了一些挫折,在功能模块的需求分析的过程中,有很多问题没有考虑周全,在编写和修改代码的过程中遇到了很多困难,在老师和同学们的帮助下,努力克服了这些困难但这也给了我编写软件的经验和教训,同时也培养了我细心,耐心的性格,树立了一种良好的科学的态度通过这次毕业设计增强了自己的动手能力在专业知识方面,我学到了很多新的东西,特别在JSP及SQL等方面,有了很大的提高我们体会到了软件开发不仅仅是编程,它需要方方面面的考虑,同时也必须具备比较全面的知识,就像我们生活中的每一件事都需要有始有终,认真对待致谢在即将结束的大学生活之际,我首先要感谢我的父母,他们不仅在生活和工作中给我最多的关怀和帮助,更给予我以精神上莫大的支持和鼓励我唯有更努力地学习和工作,才能报答他们对我的爱与关怀感谢学院的老师们,从他们身上我学到了许多宝贵的知识和做人的道理,他们在学业上对我的悉心指导,以及孜孜不倦、严谨细致的科研态度,更令我受益非浅特别感谢我的指导老师他在我的课题研究和论文完成过程中,给予了我许多理论和实践上的指导老师的指导和建议使我受益非浅,他每时每刻的督促使我不敢有丝毫的怠慢,无论在学习上还是在精神上都给予了很多帮助,这些帮助和鼓舞对我而言是一笔财富,它一直鞭策着我认真的完成毕业设计在此,我向老师致以深深的谢意!同时还要感谢学院的领导多年来对我的培养和支持,是他们为我提供了良好的学习环境和机会感谢各位专家和评委耐心审阅我的论文,他们提出了许多宝贵的意见和建议感谢所有曾经给我理解、关心与帮助的朋友们参考文献
[1]网络数据库原理及应用.第1版.四川:四川大学出版社2005
[2]JSP与网络数据库技术.第2版.北京:中国铁道出版社2003
[3]实用软件工程基础.第1版.北京:清华大学出版社2004
[4]JSP编程基础及应用教程.第4版:北京机械工业出版社.2004
[5]萨师煊,王珊.数据库系统概论.第4版.北京高等教育出版社,2006
[6]MySQL实用教程.第1版.北京电子工业出版社2008
[7]JAVA高级编程.第1版.北京:清华工业出版社2006
[8]计算机教育教材研究室.AdobeDreamweaverCS从入门到精通.北京:航空工业出社2001
[9]刘瑞新卢晓飞李树东.网页设计与制作教程.第2版.北京:机械工业出版社2003
[10]数据结构-JAVA语言的使用.第2版.西安:电子科技大学出版社2010
[11]张海藩.软件工程导论.第5版.北京清华大学出版社,2008
[12]软件工程导论.第3版.北京:清华大学出版社2006系统系统用户登录网站配件信息选择配件提交处理定单定单网站管理员派送配件管理员配件类别添加、删除、修改配件添加、删除、修改订单管理销售统计类别信息配件信息订单信息管理员管理商品销售信息管理员信息主键订单详情订单号是否删除标志订单......主键删除状态分类名称分类......主键添加时间删除状态公告......主键添加时间数量购物车......主键商品名商品介绍商品销量商品信息......主键姓名用户名密码用户......。