已阅读5页,还剩21页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本科生毕业设计题目 JavaEE手机购物系统 k 的设计与实现 A 姓名 1 学号 1院 系 1专业 信息于计算科学 1 指导教师 12016 年 12月教务处制本科生毕业设计声明本人郑重声明:所呈交的毕业设计,是本人在指导教师指导下,进行研究工作所取得的成果.除文中已经注明引用的内容外,本设计的研究成果不包含任何他人创作的、已公开发表或没有公开发表的作品内容.对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确方式标明.本设计创作声明的法律责任由本人承担. 作者签名: 年 月 日本人声明:该毕业设计是本人指导学生完成的研究成果,已经审阅过毕业设计的全部内容,保证题目、关键词、摘要部分中英文内容的一致性和准确性,并通过一定检测手段保证毕业设计未发现违背学术道德诚信的不端行为.指导教师签名: 年 月 日内容摘要:电子商城是运用电脑的信息技术和网络技术进行商务活动的一种非常先进的急速手段.当现在随着网络的迅速发展,电子商城作为网络化的新型的经济活动,慢慢的成为了发达国家增强综合竞争实力,获得全球资源配置优势的非常有效方式.计算机和网络技术相辅相成,产生的应用推进了现代化信息社会的前进,而电子商城则实现了全新的经济运行方式,将给社会带来重大经济的改革.电子商城为中小型企业的经营者和管理者打开新的天地.网上购物作为电子商城一个重要的途径,在新的经济体制中占据了非常重要的位置,对未来的电子商城的发展发挥着指引作用,越来越受到人们的重视.关键词:电子商城 Spring Hibernate Struts2 全套设计加扣3012250582 Abstract:E-commerce is the use of computer information technology and network technology for business activities of a very advanced rapid method.When now with the rapid development of Internet, e-commerce as a network of new type of economic activity, slowly become a developed country strengthen the comprehensive competitive power, to obtain the global allocation of resources advantage of the very effective way.Supplement each other, computer and network technology application to promote the advance of modern information society, while electronic mall has realized the new way of economic operation, will bring social economic reform.E-commerce for small and medium-sized enterprise operators and managers to open a new heaven and earth.Online shopping as an important way, electronic mall in the new economic system occupies very important position, for the future play a guiding role in the development of e-commerce, more and more get peoples attention.Key Words:emporium Spring Hibernate Struts2目 录1.引言11.1研究背景及意义11.2电子商城现阶段的发展状况11.3电子商城未来的发展走向11.4总结12开发相关技术与框架及配置22.1 B/S架构体系22.2 Tomcat 22.3 S2SH分析22.4 Struts2框架 22.5 Hibernate框架32.6 Spring框架 32.7 Struts2Hibernate和Spring的组合42.8 Spring组合Hibernate52.9 Spring组合Struts262.10 Struts2、Hibernate和Spring的组合开发73系统分析 73.1安全性 73.2功能需求分析 84 系统设计 84.1数据库设计 95 系统功能实现 105.1项目包结构图 105.2前台界面 115.3 注册界面 125.4 登录界面 125.5 分页界面 135.6 商品详情界面 135.7 购物车界面 145.8 订单界面 145.9付款界面 155.10 后台登录界面 155.11 管理员界面165.12 一级分类管理界面165.13 二级分类管理界面165.14 商品管理界面175.15 订单管理界面176总结 176.1 未来工作 18参考文献 19致谢 201.引言1.1研究背景及意义如今是一个信息飞速发展的时代,在信息化遍及全球的情况下,传统模式的商店也就是实体店遭到了巨大冲击.在如今网络开放的环境中,一种B-S的应用模式实现了日常消费者网上购物,网上交易,和网上支付的运营模式-电子商城诞生了.现在中国有一些电子商城做的非常成功,例如淘宝、京东、阿里等等.但是虽然电子商城对人们日常购物非常方便,它也暴露出了许多的问题,那就是商品质量问题,例如淘宝,它被国外媒体评论世界第一大假货市场.所以现在解决假货问题刻不容缓.1.2电子商城现阶段的发展状况先如今,网上的电子商城不计其数,虽然商城多了,但是商品质量问题一直的不到解决,往往客户花大价钱购买了商品却是假货,这对于消费者是不利的,消费者权益得不到保障,而解决这一问题是现在最需要解决得.1.3电子商城未来的发展走向 随着全球信息化,人们的消费方式已经发生了巨大的改变,过去人们购物都是带着现金,然后去实体店铺,最后购买商品,而这中消费方式有许多的不方便,它不经浪费人们的时间,而且过程也非常的繁琐.在未来网上消费将会变成人们的主流消费方式,在网上消费它避免了许多的繁琐工作,例如找零等工作.所以它的发展趋势将会持续提高.1.4总结 据金融时报报道,市场调查机构eMarketer发布报告称,全球互联网用户在2016年将会超越30亿大关,这将近占到全球总人口数的一半. 现在,我国的网民数量已经达到7.1亿人,者对于社会的影响是非常巨大的,在未来我国的网民数量还会不断的增加,所以电子商城将来的发展潜力是非常巨大的,而它的商业价值更是不可一忽略的.2. 开发相关技术与框架及配置2.1 B/S架构体系 B/S即Browser/Server架构他是一种基于浏览器服务器的方式,向入现在的淘宝,京东等都是使用这种方式,它的优点是用户并不需要去下载客户端然后在安装到电脑上,它只需要浏览器就可以工作,这种架构提高了系统的安全性能,而且它会让开发于维护变得更加简单2.2 Tomcat Tomcat是Apache基金会下面项目中的一个核心项目.Tomcat很好的支持了jsp和servlets的Web服务器,它可以为Jave语言编写的项目提供很好的部署.本项目使用的服务器就是apache-tomcat-.3 S2SH分析 S2SH即Struts2与Spring与Hibernate,是多数企业软件设计的使用三层结构,三层结构将数据的显示、业务的逻辑处理和数据的访问都分开处理.业务的逻辑处理、数据的访问、权限拦截的设置以及数据校验等工作放在中间的一层处理.客户端不能直接和数据库进行数据交互,必须通过不同的组件与中间一层建立连接以后,而后让中间层与数据库进行数据的交互.2.4 Struts2框架Struts2体系结构Struts2是一个开源的框架,它是一个基于MVC结构的框架,因为他的开源特性,可以方便人们研究它的运转机制,所以它被许多的程序员和编码爱好者所使用,并且它提供了一套自己的标签库,可以方便在视图层上显示数据.它对MVC的设计思想进行了很好的体现.Struts2核心实现Struts2主要用来控制系统的流程.主要由三个部分组成,核心控制器、业务控制器、用户实现的业务组件.控制器作为一个过滤器运行在Web应用中,负责拦截用户发起的请求,当用户发起的请求到达时,该过滤器会过滤用户所发起的请求.若用户发起的请求是以.action后缀结尾,则用户请求将被转入Struts 2框架进行处理.Strunts2框架在获得了以.action后缀结尾请求以后,就会根据以.action为后缀的请求的前面部分去决定调用哪个业务方法处理请求.struts2org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilterstruts2/*2.5 Hibernate框架ORM对象关系映射简称ORM它很好的解决了面向对象和关系型数据库的不匹配现象.它把面向对象编程语言映射到关系型数据库.它可以看成程序与数据库之间数据交互的桥梁,通过它,我们可以以面向对象的方式操作数据.Hibernate概述Hibernate是JDBC的轻量级封装,是主流的对象关系映射框架,它可以使程序员用面向对象的思维方式来操作数据库.它管理了类到数据库表的映射,而且提供了HQL查询语言,大大的减少了程序员使用SQL查询,提高了数据的处理时间.2.6 Spring框架Spring框架介绍Spring是一个开源框架,它是从实际的开发中抽取出来的.它给企业级开发提供了一个轻量级解决方案.包括:AOP、IOC,其中AOP是面向切面编程,IOC是控制反转,他能组合多种出具层技术,是优秀的开源的MVC框架.Spring致力于应用的各层解决方案而不仅是专注于某一层解决的方案,它贯穿了程序的各个层,有效的降低了各层的耦合.轻量级轻量级与重量级的区别为,主要看它们使用了多少的服务,如果框架使用服务多,容器为Java对象做的工作多,就会影响到应用程序的运行时间和处理时间.对于Spring容器,虽然它有很多的服务,但是这些服务在默认情况下是关闭的,当应用需要的时候在去用.IOC(控制反转)通常说的控制反转就是应用程序本身不负责依赖对象的创建和维护,依赖对象的创建和维护是由其他的外部容器负责.这样控制权就由应用程序转移到外部容器身上,控制权的转移就是我们通常说的反转.AOP(面向切面编程) AOP,即面向切面编程.AOP给我们提供了一个全新的视角分析与设计软件系统.面向切面编程是使用分离关注点的方式来形成模块化的机制然后在去解决关注点的问题.通常关注点指的是一个目标、概念或者是可实现的域.可以说系统是由一组关注点组成的,软件系统一般由多个系统级别的关注点和核心的关注点组成的.核心的关注点是处理业务过程,系统级别的关注点是指那些与核心业务没有关系,但是会横切多个核心关注点,并且给核心关注点提供服务,如事务的处理、日志、安全检测等服务.面向切面的核心是指允许我们自己独立完成一个个的关注点,在以松耦合的方法把这些关注点组织成一个完整的应用系统,形成模块化关注点.面向切面使用的是横向的结构,它就是将那些与业务没有关系,但为业务处理共同服务的,像并发访问控制的一些通用功能需求,从不相关的的模块之间分离出来,在某一个方法中集中的编写,组织与维护.这个是软件系统建模抽象的进一步的提升,从而得到结构非常清晰、模块化很强、代码耦合度比较低、代码重用性能比较高和比较容易维护的系统.2.7 Struts2、Hibernate和Spring的组合前面的部分,我们了解了轻量级分层的设计模式,有多种优秀框架在对应层找到了自己的位置.如表示层有:Struts、WebWork、Velocity、JSF、Tapestry等.持久层有:Hibernate、Entity EJB、iBATIS、OJB等;把各个层的开源框架组合在一起,把它们作为软件系统的主要架构,使软件系统具有很好的扩展性和维护性.在许多的组合方案当中,struts2与hibernate与spring已经成为应用开发的主流体系.2.8 Spring组合HibernateSpring因为它的开放性,能够和大多数ORM框架进行很好的组合.这样Spring框架就能使用ORM框架了.Spring提供对数据持久层的支持,数据持久层组件是应用程序的持久层访问的非常重要的组件,我们可以把精力放在对数据的管理口上.另外,Spring还提供了异常抽象,不需要我们在编码的时候显示的捕获特定异常.以下是Spring整合Hibernate的步骤.在Spring的配置文件ApplicationContextxml中配置Hibernate对SessionFactory的设置.如下面的示例代码.org.hibernate.dialect.MySQLDialecttruetrueupdatecn/itcast/shop/user/vo/User.hbm.xml Spring的IOC容器配置了SessionFactoryBean以后,SessionFactoryBean会随着系统程序的启动来进行加载,通过Spring依赖注入把Bean注给其它Bean.从配置文件可以知道,以这种声明式方式去管理SessionFactory的时候,可以让应用在不同数据之间进行切换,当持久层服务改变的时候,程序中的代码并不需改动,只要修改配置文件就可以,让系统维护性加强.2、使用Spring中的HibernateDaosupport和HibernateTemplate类简化Hibernate DAO实现类的编写,完成数据持久化的操作.3、使用Spring的事务对事物进行统一管理.Spring可以用编程方式和声明方式来事务管理.声明式的事务比编程的方式要灵活许多.也能在Spring中使用注解的方式对事务管理:2.9 Spring组合Struts2虽然Spring也支持MVC开发方式,但是Struts2确是一个比较完全的MVC开发模式框架,所以在一般的开发中使用Spring和Struts2组合开发.Struts2和Spring的组合比较简单.组合主要是是:把Struts2中的Action的实例生成让Spring容器负责管理,目的是让控制器和实现业务逻辑的组件实现分离.在这种情况下,用工厂模式,让Spring容器去管理Action,使用Spring容器的特性为控制器去注入处理业务的逻辑组件.Struts2只实现控制器的功能.下面是Spring和Struts组合的关键步骤.Spring和Struts组合有两种方式Struts2的Action交给Spring框架创建.Struts2的Action由Struts2框架自身创建.我们的系统使用第一种方式,因为第一种方式Action由Spring容器去管理,可以方便我们对Action进行面向切面编程.但第一种的关键:就是在Struts2框架创建Action的时候,默认是多例的.但是Spring容器在管理类的时候,默认创建确是单例的.单例方式比较容易产生线程的安全问题.所以需要配置类的scope属性.在Spring的配置文件中:在Struts2的配置文件中:2.10 Struts2、Hibernate和Spring的组合开发三者的组合开发:在进行三大框架的组合开发的时候,通常使用从上到下于从下到上的分层开发原则,在大多数的实际项目开发中,一般使用后一个开发模式,即:(1)从底层进行开发,先开发实体类,这些实体对象会在各个层之间进行数据的传递,利用Hibernate做好实体对象和数据库表之间的映射关系.(2)DAO层的开发.它对数据进行持久化操作,即对处理的数据进行增删改查,使用Spring对Hibernate提供的HibernateDaoSupport类来实现的.(3)Service层的开发.主要是对具体业务组件进行开发,用于处理各类内部的业务逻辑,而且能够隔离事务.(4)Action层开发.用于处理用户发起的Web请求,由Spring容器进行管理.3. 系统分析3.1 安全性 用户的退出会销毁用户个人信息,防止用户信息的泄露,管理员的登录地址与用户登录地址不同,进而提高商城的安全.3.2 功能需求分析前台功能1.首页:用户登录是看到的第一个页面,上面有网站的一些功能模块,包括用户的登录注册等.2.用户的注册:对于首次来商城购物的用户,需要注册自己的账号才能登录商城购买手机.3.用户的激活:对于注册成功的用户,需要进行账号的激活才能进行登录.4.用户的登录:对于注册成功,而且已近激活的账号才能登录.5.用户的退出:在用户购买商品后,对用户的登录信息进行销毁.6.首页商品展示:显示最新商品以及热门商品.方便用户了解最新商品和最热门商品.7.分类页面商品展示:根据某个分类的信息去展示商品.可以方便用户查找相应分类商品.8.商品详情展示:用户购买商品是可以了解商品的具体信息.9.购物车:类似商店的手推车,用户可以向自己的购物车中购买手机.10.订单:每个购物车中的所有商品都是一个订单,订单用于用户最终付款.后台功能1.管理员登录:网站的管理员用自己独特的账号和密码进行登录.2.一级分类管理:管理员对网站首页一级分类进行管理.3.二级分类管理:管理员对网站首页二级分类进行管理.4.商品管理:商品进行管理.5.订单管理:管理员对订单进行管理.4.系统设计 本系统数据库为MySQL5.0版本,系统所有的与数据库相关的开发都遵从MySQL5.0数据库开发原则.本系统数据库开发定义名词如下:*:主关键字符号; PK:主关键字缩写;+:外关键字符号; FK:外关键字缩写; &:复合关键字符号;CPK:复合关键字缩写;UNIQUE:唯一索引;4.1 数据库设计表1:adminuserADMINUSER(adminuser)是否主键字段名字段描述数据类型长度可空是uid管理员编号INT(11)11否username管理员名VARCHAR(50)50是password管理员密码VARCHAR(30)20是表2:fengleiFENGLEI(fenglei)是否主键字段名字段描述数据类型长度可空是cid一级分类编号INT(11)11否cname一级分类名VARCHAR(50)50是表3:fengleisecondFENGLEISECOND(fengleisecond)是否主键字段名字段描述数据类型长度可空约束是csid二级分类编号INT(11)11否csname二级分类名VARCHAR(50)50是cid一级分类编号INT(11)11是外键表4:ordersORDERS(orders)是否主键字段名字段描述数据类型长度可空约束是oid订单编号INT(11)11否total订单总金额DOUBLE0是ordertime订单时间datetime20是state订单状态INT(11)11是name收货人名VARCHAR(20)20是phone收货人电话VARCHAR(20)20是addr收货人地址VARCHAR(50)50是uid用户编号INT(11)11是外键表5:orderitemORDERITEM(orderitem)是否主键字段名字段描述数据类型长度可空约束是itemid订单项编号INT(11)11否count数量INT(11)11是subtotal小计DOUBLE0是pid商品编号INT(11)11是外键oid订单编号INT(11)11是外键表6:productADMIN(admin)是否主键字段名字段描述数据类型长度可空约束是pid商品编号INT(11)11否pname商品名VARCHAR(50)50是market_price商品市场价DOUBLE0是shop_price商品商城价DOUBLE0是image商品图片路径VARCHAR(255)255是pdesc商品描述VARCHAR(255)255是is_hot是否热门商品INT(11)11是pdate商品上传日期datetime0是csid二级分类编号INT(11)11是外键表7:userUSER(user)是否主键字段名字段描述数据类型长度可空是uid用户编号INT(11)11否username用户名VARCHAR(20)20是password用户密码VARCHAR(20)20是name用户真实姓名VARCHAR(20)20是email用户邮箱VARCHAR(20)20是phone用户电话VARCHAR(20)20是addr用户住址VARCHAR(50)50是state用户状态INT(11)11是code激活码VARCHAR(64)64是5. 系统功能实现5.1 项目包结构图图1:项目包结构图5.2前台界面图2:前台界面5.3注册界面图3:注册界面5.4登录界面11图4:登陆界面5.5分页界面图5:分页界面5.6商品详情界面图6:商品详情5.7购物车界面图7:购物车5.8订单界面图8:订单5.9付款界面图9:付款界面5.10后台登录界面图10:后台登陆界面5.11管理员界面图11:管理员界面5.12一级分类管理界面图12:一级分类5.13二级分类管理界面图13:二级分类5.14商品管理界面图14:商品管理5.15订单管理界面图15:订单管理6. 总结S2SH是一个优秀的企业开发框架,S2SH应用用它的稳定性能、开源性和较高的安全性能,被称为企业级的应用开发.本论文是以实际的系统开发为项目背景,按照Java EE软件分层的模型,将系统分成四层,即模型层,持久层,业务逻辑层和表示层,而且组合了当前企业开发中比较最盛行的开源框架Struts2、Hibernate和Spring作为本系统的架构.Struts2框架偏重于MVC设计模式,Hibernate用于完成对象关系映射和持久化的工作,Spring贯穿表示层、业务层、持久层,它主要
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 山东省青岛市胶州市2022-2023学年小学英语四年级上学期期末试卷(含答案)
- 2022年9月国开电大专科《公共行政学》期末纸质考试试题及答案
- 介绍日本学园祭
- 自我介绍培训课件
- 资产评估模拟实训
- 胸腔积液常见症状及护理方法培训
- 压疮护理记录宣教
- 2025年生产L型氨基酸的新酶种项目提案报告范文
- 2025年BMCSMC材料项目申请报告
- 徒手呼吸功能训练
- 2025年中国脑机接口行业发展研究报告
- 2025广东学法用法考试题目及答案
- 四川电工(初级)考试内部全考点题库含答案
- 2025年计算机二级《Python》历年真题
- 超声波辅助连接技术-洞察与解读
- 结直肠癌科普课件
- 可复用物品消毒灭菌管理
- 2025年上海市浦东新区普通高中物理高一第一学期期末考试试题含解析
- 2025广东广州越秀区大东街道办事处招聘综合事务中心辅助人员6人考试笔试备考试题及答案解析
- 广播电视概论宫承波课件
- 2025年药房半年工作总结
评论
0/150
提交评论