1、 密级: NANCHANG UNIVERSITY 学 士 学 位 论 文THESIS OF BACHELOR(2013 2017年) 题 目 网上书店系统的设计与实现 学 院: 软件学院 系 软件工程 专业班级: 学生姓名: 学号: 指导教师: 职称: 副教授 起讫日期: 南 昌 大 学学士学位论文原创性申明本人郑重申明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究作出重要贡献的个人和集体,均已在文中以明确方式表明。本人完全意识到本申明的法律后果由本人承担.作者签名: 日期:
2、学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权南昌大学可以将本论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 保密,在 年解密后适用本授权书。本学位论文属于 不保密。(请在以上相应方框内打“)作者签名: 日期:导师签名: 日期:附件5摘要网上书店系统的设计与实现摘要随着互联网的飞速发展,网上购物已经逐渐称为老百姓生活中的一个必备技能,电子商务在互联网高速发展的推动下,这几年发展的非常迅猛.网上书店作为一个互联网电子商务系
3、统,自然也是高速发展。随着市场全球化,世界经济一体化的发展,我们可以足不出户的买到我们想要的书籍,这在20世纪是不可想象的,但现在却真实地出现在我们的生活中。网上书店具有常规电子商务所具有的所有优点:价格低,种类多,形式简单,售后服务优良。不仅如此,网上书店可以24小时不间断的处于营业状态.这是我们传统实体书店所不具备的最大优点。网上书店具备传统实体书店这些不可超越的优点,所以网上书店已经成为电子商务的先锋。本次的研究课题是要实现一个具有电子商务所有特点的网上书店系统.文中从网上书店的背景到国内外的研究现状及发展趋势都做了详细的介绍。描述聊网上书店的可行性和必要性,从软件设计的角度研究了网上书
4、店系统的实现。结合数据库模型图和数据库表描述了数据库的结构.在软件实现上,本文从服务端和客户库端两个角度分别给出了代码设计、关键功能实现.最后,文中给出了软件实现结果和测试报告。系统环境主要采用的技术是SpringMVC+Spring+Mybatis框架技术,客户端主要是基于浏览器的jsp页面,数据库使用的是MySQL。关键词:网上书店; Mybatis;SpringMVC;Spring;I AbstractDesign and implementation of online bookstore systemAbstractWith the rapid development of netw
5、orking, online shopping has gradually called the peoples lives in a necessary skills, e-commerce in the rapid development of the Internet, driven by the development of the past few years is very rapid。Online bookstore as an Internet e-commerce system, naturally highspeed development. With the global
6、ization of the market and the development of world economic integration, we can buy the books we want at home, which is unthinkable in the twentieth century, but now it is true in our lives。 Online bookstores have all the advantages of conventional e-commerce: low prices, many types, simple form, ex
7、cellent aftersales service。 Not only that, the online bookstore can be 24 hours uninterrupted in the business state. This is our traditional physical bookstore does not have the greatest advantage. Online bookstore with traditional physical bookstore these can not go beyond the advantages, so the on
8、line bookstore has become a pioneer in ecommerce。The research topic is to achieve an e-commerce with all the hot online bookstore system. The paper from the background of the online bookstore to the domestic and international research status and development trends have done a detailed introduction.
9、Describe the feasibility and necessity of online bookstore, and study the realization of online bookstore system from the perspective of software design。 The structure of the database is described in conjunction with the database model diagram and the database table. In the realization of the softwa
10、re, this paper from the server and the client side of the two aspects were given the code design, the key features to achieve. Finally, the software results and test reports are given。System environment is the main technology for SpringMVC framework + Spring + Mybatis, the client is mainly based on
11、the JSP page browser, using a MySQL database.Keyword: Online bookstore; Mybatis; SpringMVC;Spring;II目录目录摘要IAbstractII第一章 网上书店的现状与发展11.1、课题背景11.2、研究现状与发展趋势11.2.1、从国内的研究状况及发展趋势看11.2.2、从国外的研究状况及发展趋势看21.3、选题的意义3第二章 需求分析42.1、项目概述42.2、功能需求42.2.1、用户模块42.2.2、图书信息模块42.2.3、购物车模块52.2.4、订单模块52.2.5、管理员模块52.3、非功能
12、需求62.3.1、性能需求62.3.2、用户友好需求62.3.3、安全性需求72.4、技术需求72.4.1、代码实现技术72.4.2、数据库技术9第三章 系统概要设计113.1、系统架构113.2、技术架构113.3、系统功能结构12第四章 模块详细设计134.1、用户模块134.2、图书模块134.3、购物车模块144.4、订单模块154.5、管理员模块16第五章 数据库设计175.1、数据库逻辑模型图175.2、数据库表设计18第六章 项目实现206.1、项目环境配置206.2、项目架构236.3、功能实现246.3.1、验证短信246.3.2、图片上传256.3、订单支付26第七章 测试
13、277.1、登录注册277.2、图书列表287.3、图书信息297.4、订单297.5、管理员管理307.6、测试总结30总结31参考文献32致谢33第一章 网上书店的现状与发展第一章 网上书店的现状与发展1.1、课题背景随着互联网的飞速发展,网上购物已经逐渐称为老百姓生活中的一个必备技能,让我们不可忽视的是随着老百姓的生活水平的提高,老百姓的购物理念也在发生着翻天覆地的变化。电子商务在互联网高速发展的推动下,这几年发展的非常迅猛。网上书店系统可以为人们提供一个安全、方便、快捷的购物平台。网上书店系统的开发也正是在这个背景下提出的。图 1-1 近几年来我国在线零售书籍规模随着社会的不断进步和互
14、联网的发展,传统的购物方式在逐渐被取代,而近年来互联网购物的普及使得人们对网上购物变得更加热衷。传统购物方式受其价格、种类等因素限制,不能满足当下用户新形势的购物要求,而网上书店借由互联网或移动设备的普及以其轻便、及时等友好特性,受到广大购物者的追捧。1。2、研究现状与发展趋势1.2.1、从国内的研究状况及发展趋势看国内的网上书店大体上可以分为三类:以传统模式的新华书店系统为主依托组建的网上书店,这种网上书店书目保持这传统模式的全部品种和全部类别.由出版社自主建立的网上书店,大多是结合出版社自己的特色,在自己出版社自身的网站中建立网上购书系统。大部分的出版社都建立了这种类型的网页。如电子工业出
15、版社等.当前被消费者使用的最多的也是发展速度最迅猛的是商业型的网上书店,例如被誉为全世界最大的网上书店的当当网上书店,当当网上书店的管理团队拥有丰富的图书出版、销售、市场营销及信息技术的先进经验,光是图书的种类就已经达到了20多万种,占据了中国大陆可供图书市场份额的 90 %。 网上书店的配送服务与支付方式在前几年还是妨碍网上书店行业发展的瓶颈问题。但是,随着物流行业与网上支付快速发展,这个瓶颈已经在在逐渐被突破,如今,网上书店行业已经呈现出良好发展的前景,拥有客观的未来. “货到付款”的方式就是中国网上书店行业的成功创新之一,在帮助网上书店行业突破发展瓶颈这方面功不可没。“货到付款”这种购物
16、方式在整合各种配送资源的同时,既解决了送货时间长,物流费用高的问题,同时也大大消除了消费者对网上交易安全性的担忧.没有了顾虑的消费者在网上书店价格优势的引导下自然而然地转向于选择网上书店进行购书.随着市场环境的逐步优化,又有亚马逊、当当网这样先进的网上书店的经验嫁接,中国国内网上书店行业发展前景自然一片大好。现在,随着网络银行的快速发展以及网络交易安全保障的增强,在线支付也成为网上消费者付款的主流方式。1.2。2、从国外的研究状况及发展趋势看1995年7月,这是网上书店历史上划时代意义的时期,美国杰夫贝佐斯在西雅图创办了全世界第一家真正的网上书店-亚马逊网上书店,只经过短短几年时间的发展,它已
17、经成为全世界最大的网上书店。 一方面,从外部发展环境的变化趋势来看,中国物流市场发展迅速,而且已经对外开放,虽然一些国际物流公司如DPWN已经进入中国物流市场,中国本土物流公司正在面临挑战,但是中国本土物流公司也将在竞争中得到优化;中国人口基数大是优势之一,而且互联网用户增长快,网上书店行业拥有大量的潜在客户; 另一方面, 从网上书店的内在潜质来看,中国的网上书店行业能够在借鉴亚马逊书店先进经验的同时进行再度创新,利用中国特有的环境优势来克服外部环境的不利因素。这对中国网上书店的发展来说,有着非常大的好处。1。3、选题的意义如今,伴随着互联网时代的高速发展,一个崭新的时代正向我们大踏步走来,电
18、子商务注定将成为21世纪最主流的商业模式.随着网络技术的不断发展,网上书店已经成为一种新型图书销售渠道,也成为电子商务不可分割的一部分,网上书店以其方便、快捷,价格低,种类多等一系列的优点冲击着传统的图书销售产业,这是机遇也是挑战。网上书店通过网络技术与人的结合,以互联网技术为基础,进行网络上的图书销售.网上书店的发展不仅仅是图书销售一个行业的发展,它也带动着物流行业,网络银行的发展,甚至也在的推动者互联网行业的前进。身处21世纪的我们,已经渐渐与互联网密不可分。但是,无论我们处于怎样的时代,我们都离不开载满知识的书籍。互联网虽然能教会我们很多,但是对于青少年来说仍然具有很多危害,只有书籍在传
19、授我们知识的还能让我们感受到文化的气息。人类离不开书籍,网上书店有是电子商务密不可分的一部分。在这样的环境下网上书店行业必定会迎来蓬勃发展的未来。3第二章 需求分析第二章 需求分析2。1、项目概述网上书店系统是一个基于B/S架构的软件系统,是一款为用户提供购书功能的基于浏览器的软件,该系统是一个 系统中分为用户端和服务端。用户端是用户进入后可以浏览书籍信息,查看书籍评价,用户登录后可以进行下订单购书,添加购物车,订单评价等操作。 服务端有系统管理员对系统数据进行管理的功能。主要是书籍信息,订单信息,订单明细,购物车信息,用户信息的增删改查等操作.2。2、功能需求2.2.1、用户模块1、用户注册
20、用户可以在注册页面进行注册账号,注册账号。 2、用户登录用户再登录界面输入账号信息,验证成功之后即可登陆成功。3、用户信息修改4、退出登录用户如果想要切换账号,即可点击退出登录,回到登录界面重新登录。2。2。2、图书信息模块1、图书信息列表用户在图书列表界面可以看到图书商品列表2、图书搜索在搜索框输入图书名称进行模糊查询。3、图书信息用户再图书列表界面点击图书之后即可进入图书信息界面,改界面主要展示图书的介绍等详细信息。2。2.3、购物车模块1、添加购物车用户在进入图书信息界面之后,进行购物车添加的操作.2、查看购物车信息用户登录之后可以在购物车界面查看所有的购物车信息,系统会计算出总价显示。
21、3、购物车信息修改4、购物车结算放在购物车里的所有商品,用户可以自定义选择需要结算哪些商品,然后生成订单。2。2。4、订单模块1、订单确认用户在进入图书信息界面之后,如果中意该商品,可点击立即购买。进行购买操作。2、添加订单用户进入订单确认界面之后,核对自己的订单信息,添加订单信息。3、订单支付用户提交订单之后,即可进行订单支付操作,用户可以选择喜欢的支付方式进行付款。4、确认收货用户在收到商品之后,可以登录书店,进行确认收货操作,。5、订单详情用户登录之后可以在订单列表界面点击点单详情查看订单详细信息。2.2。5、管理员模块管理员模块是属于后台服务端的模块,是系统管理员进行相关操作的模块,和
22、普通用户无关。1、 用户管理管理员可以在后台查看普通书店用户处密码外的所有信息,可对用户的状态进行修改2、 管理员用户管理员可以添加、修改管理员信息,对图书,购物车,订单信息进行管理等操作.3、 图书信息管理管理员用户可以在图书信息界面进行图书信息的添加,修改,删除,查看等0操作。4、 购物车信息管理管理员用户可以在购物车信息界面进行购物车信息的查看操作。5、 订单信息管理管理员用户可以在订单信息界面进行订单信息的修改订单状态。2。3、非功能需求2。3.1、性能需求1、网络网上书店系统以网上购物为核心功能,用户会进行商品查看或者购物等操作。因此会产生大量的数据传输,用户注册时验证短信有一定的输
23、入时间限制,在网络速度一定的条件下,系统要求尽可能高提高网络传输效率,尽可能快完成网络传输请求.2、响应网上书店系统包括智能短信,图书搜索,下单购物等功能,因此,需要较快的响应速度和明确的响应结果.3、数据准确性由于购物车或者订单数据是用户的购物凭证的关键数据,因此要保证数据准确性,在数据传输过程中,应保证数据的一致性和准确性。2。3。2、用户友好需求1、界面友好网上书店系统用户端的用户群为普通人,为满足用户审美要求、健康要求,提高软件吸引力,延长用户使用时间,在终端界面设计上应该采用时下流行、符合广大用户审美的UI设计模式.2、操作友好网上书店系统受众为普通人,操作设计应尽可能在保证数据完整
24、性和一致性的前提下简单易行,一目了然。2.3。3、安全性需求网上书店系统保存了大量的用户手机号、用户密码、用户邮箱等重要用户信息,用户还会进行订单支付操作。因此要求在访问数据库前进行数据库访问认证,在数据传输过程中尽量减少敏感信息传输。若传输敏感信息传输,应在传输前对传输信息加密。2。4、技术需求2.4.1、代码实现技术1、 SpringSpring是一个整合框架,它能完美地整合许多Java框架,例如Mybatis,Hibernate,Struts等. 通过Spring框架提供的IOC容器,我们可以将对象的创建由Java类转到IOC容器,将对象之间的依赖关系交由Spring容器进行控制,降低J
25、ava代码程序耦合性。有了Spring框架,开发人员不必再为单例模式类、属性文件解析等这些底层需求编写代码,开发人员可以更专注于业务逻辑的实现。通过Spring框架提供的AOP切面编程功能,方便进行面向切面的编程,许多用传统OOP难以实现的功能可以通过使用AOP轻松应付。 在Spring框架中,我们可以从繁杂的事务管理代码中解脱出来,Spring通过声明式事物灵活地进行事务的管理,极大地提高开发效率。图 2-1 Spring框架模型2、MybatisMyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了g
26、oogle code,并且改名为MyBatis 。是一个基于Java的持久层框架。MyBatis提供的持久层框架包括SQL Maps和Data Access Objects(DAO)。MyBatis 是支持普通 SQL语句查询持久层框架.MyBatis通过使用简单的 XML文件用于配置和原始映射,将DAO层接口和 Java 的实体类映射成数据库中的记录.图 22 Mybatis框架结构3、SpringMVCSpringMVC是拥有成熟MVC架构的基于请求响应模型的请求驱动类Web服务框架,其核心架构分为前端控制器、处理器、视图和模型.在配置文件为SpringMVC配置完Dispatcher S
27、ervlet(SpringMVC控制器)后,所有的请求都会被该控制器接受,并根据请求信息寻找目标处理器,将请求参数等信息交付处理器.处理器在获取请求信息后,产生命令对象,由业务对象获取该命令对象进行业务处理,并在处理结束后返回ModelAndView对象。前端控制器在获得返回对象后,向请求客户端返回响应Response。图 23 SpringMVC工作流程2。4.2、数据库技术MySQL是一个关系型数据库系统, 是如今最流行的关系型数据库管理系统之一,在 WEB 应用开发方面,MySQL应用软件拥有很多版本,本系统使用的是MySQL5.7版本。MySQL数据库中所使用的 SQL 语言是最常用标
28、准化SQL语言。MySQL 数据库由于其体积小、速度快、等特点,尤其是免费开放源码这一特点,受到众多企业的青睐,一般在中小型网站的开发都会选择 使用MySQL 作为数据库.33第三章 系统概要设计第三章 系统概要设计3。1、系统架构根据网上书店系统需求,本系统采用B/S模式架构。网上书店系统需要具备高效的UI渲染、数据展示、快速响应、操作友好等性能。需要及时接受用户端各类请求,迅速处理客户端发送的逻辑操作,快速与数据库建立联系,对数据操作,并迅速将查询结果、操作结果、处理结果响应给客户端。结合以上系统需求,项目采用SpringMVC+Mybatis+Spring架构作为系统程序架构。Sprin
29、gMVC能够分派发送到服务端的请求到对应功能逻辑的控制层Controller,控制层将获取的参数传递给业务层,让业务层根据具体业务流程处理,处理过程中,业务层调用Mybatis的持久层Dao对象操作数据库,完成数据库的增删改查操作,并将查询结果返回给业务层完成业务处理,业务层处理完成后将处理结果返回给控制层,控制层重新获取到控制权后,将处理后的数据封装为响应报文发送给客户端,完成一次请求操作。3.2、技术架构表 31 网上书店系统使用技术用户界面设计JSP数据异步交互Ajax,Gson,jquery表示层框架SpringMVC数据持久层框架Mybatis整合、注解框架Spring数据库MySQ
30、L服务器Tomcat1、Ajax并不是一种新的编程语言,它是一种用于网页数据异步交互的技术,Ajax可以更好更快的在在浏览器与 Web 服务器之间使用异步数据传输(HTTP 请求),这样就可使网页每次从服务器请求少量的信息,而不用刷新整个页面。2、Gson是一个Google公司封装的Java类库,用于将Java对象转换为JSON格式数据,是对JSON的另一种封装。3、jQuery是一个快速、简洁的JavaScript框架,jQuery提供了对基本JavaScript结构的增强,比如元素迭代和数组处理等操作,jQuery简化了原本使用JavaScript代码需要处理的方式.4、Tomcat 服务
31、器是一个开源,免费的Web 应用服务器,属于小型轻量级应用服务器,因为Tomcat 性能稳定,而且免费开源,因此深受Java 开发者的喜爱,而且得到了很多软件开发商的认可,已经成为比较流行的Web应用服务器。3.3、系统功能结构图 31 功能结构图1、 普通用户用户信息修改主要包括:修改密码,昵称,绑定邮箱,修改送货地址等。购物车操作主要包括:添加,修改,查看,移除等操作.订单操作主要包括:订单确认,修改,提交,取消,支付,查看,确认收货操作。2、 管理员用户图书信息管理主要包括:图书信息的添加,修改,删除等操作。订单信息管理主要包括:订单信息图书的发货操作。第四章 模块详细设计第四章 模块详
32、细设计4。1、用户模块用户模块包括登录,注册,修改个人信息,注销登陆等功能.图 4-1 用户用例图1、用户注册用户可以在注册页面进行注册账号,用户自定义输入账号,密码,手机号码,输入账号之后,如果输入信息验证通过即可,通过手机号码发送验证码,再输入验证码,验证码正确即可注册账号。图 4-2 用户用例图2、用户登录用户再登录界面输入账号信息,验证成功之后即可登陆成功。3、用户信息修改用户注册成功之后,可以在用户信息修改界面,根据自己的需要输入自己要修改的信息,验证成功之后即可修改成功。4、退出登录用户如果想要切换账号,即可点击退出登录,清除掉sesson中存储的之前所登录账号信息,回到登录界面重
33、新登录,用户即可切换账号重新登录。4.2、图书模块1、图书信息列表用户不需要登陆即可在图书列表界面可以看到图书商品列表,可以根据图书分类进行分类搜索图书。2、图书搜索用户可能在图书列表界面不一定能看到自己想要的图书商品,可以在搜索输入图书名称进行查询,后台查询到的所有图书信息会在图书列表中显示.3、图书信息用户再图书列表界面点击图书之后即可进入图书信息界面,改界面主要展示图书的介绍等详细信息。4。3、购物车模块图 43 购物车用例图1、添加购物车用户在进入图书信息界面之后,如果中意该商品,但又不想现在购买,既可点击添加购物车.用户如果是登录状态,即可添加进购物车,如果是未登录状态,则会提醒用户
34、进行登录操作。登录之后返回图书信息界面,进行购物车添加的操作。2、查看购物车信息用户登录之后可以在购物车界面查看所有的购物车信息,系统会计算出总价显示。3、购物车信息修改用户登录之后可以在购物车界面修改购物车中商品数量,移除购物车等操作.4、购物车结算放在购物车里的所有商品,系统会计算出一个总价显示,用户可以自定义选择需要结算哪些商品,系统会计算用户选中的商品总价,然后生成订单.图 44 购物车用例图4.4、订单模块图 4-5 订单用例图1、订单确认用户在进入图书信息界面之后,如果中意该商品,可点击立即购买。用户如果是登录状态,即可进入确认订单页面,如果是未登录状态,则会提醒用户进行登录操作.
35、登录之后返回图书信息界面,进行购买操作.2、添加订单用户进入订单确认界面之后,核对自己的订单信息,如果订单信息中所有的必填项中信息都验证无误,即可点击提交订单,添加订单信息。订单在三十分钟内有效,如果用户再三十分钟之内没有进行支付,系统会自动进行取消订单操作。图 46 订单用例图3、订单支付用户提交订单之后,即可进行订单支付操作,用户可以选择喜欢的支付方式进行付款。4、订单查看用户登录之后可介入我的订单页面查看自己的所有订单信息,可以指导自己买过那些商品。5、确认收货用户在收到商品之后,可以登录书店,进行确认收货操作,确认收货之后,用户支付订单所付金额会自动转入卖家账户。系统会提示用户收到货之
36、后在进行确认收货操作。6、订单详情用户登录之后可以在订单列表界面点击点单详情查看订单详细信息。4.5、管理员模块图 47订单用例图管理员模块是属于后台服务端的模块,是系统管理员进行相关操作的模块,和普通用户无关。3、 用户管理管理员可以在后台查看普通书店用户处密码外的所有信息,可对用户的状态进行修改操作。4、 管理员用户系统默认提供一个管理员账号,该管理员账号登录之后,可以进行管理员的相关操作。如添加、修改管理员信息,对图书,购物车,订单信息进行管理等操作。6、 图书信息管理管理员用户可以在图书信息界面进行图书信息的添加,修改,删除,查看等操作.7、 购物车信息管理管理员用户可以在购物车信息界
37、面进行购物车信息的查看操作。8、 订单信息管理管理员用户可以在订单信息界面进行订单信息的修改,查看等操作。普通用户在支付之后,管理员可以进行发货操作,即修改订单状态。第五章 数据库设计第五章 数据库设计5。1、数据库逻辑模型图图 51 数据库设计cdm模型图图 52 数据库设计pdm模型图5。2、数据库表设计1、用户表:t_user表 5-1 用户表属性字段名非空性是否为主键iduid非空,唯一pk用户名Username唯一,非空密码password非空邮箱email地址address手机号phone邮政编码postcode昵称nickname创建时间Create_date2、管理员表:t_a
38、dmin表 5-2 管理员表属性字段名非空性是否为主键账号Aid非空,唯一Pk用户名Aname非空,唯一密码password非空权限power非空性别Sex创建时间Create_date3、 图书表:t_books表 5-3 图书表属性字段名非空性是否为主键idBid非空,唯一Pkisbnisbn非空,唯一书名Bookname非空作者Author非空出版社Publish非空出版日期Publish_date非空类别type非空数量amount非空价格Price非空介绍Ps创建时间Create_date图片1pic_address1图片2pic_address24、 购物车:t_cart表 54
39、购物车表属性字段名非空性是否为主键id非空,唯一PkBook_idBook_id非空User_idUser_id非空数量Amount添加时间Add_date价钱Cost5、 订单表:t_order表 55 订单表属性字段名非空性是否为主键idid非空,唯一pkUser_idUser_id订单时间Order_date订单号Order_code非空,唯一价钱Cost备注Ps状态State6、订单明细表:t_orderInfo表 5-6 订单明细表属性字段名非空性是否为主键idid非空,唯一pkBook_idbook_id非空,唯一Order_idOrder_id创建时间create_date订单号
40、Order_code价钱Cost数量Amount备注Ps状态State第六章 项目实现第六章 项目实现6.1、项目环境配置1、SpringMVC自动扫描controller类,只需要在controller类钱配置注解controller.图 61 SpringMVC扫描controller配置2、SpringMVC自动过滤静态资源,jsp页面有很多静态图片,js,css文件,不配置系统会找不到静态资源。图 62 SpringMVC过滤静态资源配置3、SpringMVC配置json格式转化器,系统可以使用ajax技术进行数据异步交互。图 6-3 SpringMVC使用Ajax配置4、Spring
41、mvc配置视图转换器,controller返回一份逻辑视图通过视同转化器转换为物理视图返回用户页面。图 6-4 SpringMVC视图转换配置5、网上书店系统需要上传大量图片,需要有文件上传配置图 65 SpringMVC文件上传配置6、配置文件引入jdbc。properties文件,该文件中数据库的连接信息。数据库连接池使用阿里巴巴开发的数据库连接池。图 6-6 Spring-mybatis数据库连接配置7、Spring可以完美整合mybatis,即可以将spring和mybatis的配置文件整合到一起。图 6-7 Springmybatis配置文件整合9、 声明式事务管理建立在AOP之上的
42、。其本质是使用面向切面编程,将Java代码中需要进行事物相关逻辑,放入一个切面之中,执行事务逻辑处理。再使用代理模式进行封装,只需在Spring配置文件中做相关的事务规则配置,便可以将事务规则轻松地应用到业务逻辑中。图 68 Springmybatis配置文件整合9、在web。xml文件中配置编码过滤器,防止乱码请求时的出现。图 6-9 编码过滤器配置10、系统使用的搜游框架jar包图 6-10 系统所有jar包6.2、项目架构图 611 系统架构1、 Common:这个包主要有一些公共的Java类BasrController是一个公共的controller类,他内部有获取请求数据,转换Gso
43、n格式,生成分页查询页码等方法.MessageUtil是一个智能短信工具类,PictureUtil是一个图片复制的工具类.2、 Controller:这个包是所有controller存在的包,负责和前台用户界面的数据交互处理。3、 dao:dao包是一个接口包,其中的接口没有实现类.4、 entity:这是都有实体类的包,每一个类对应数据库中的一张表.5、 mapper:这里是所有数据库语句执行的地方,包中的每一个。xml文件映射entity包中的一个实体类和dao包中的一个接口.6、 service:这个包中包含了业务逻辑层的接口和业务层的接口实现类,在这里进行主要的业务逻辑操作。6。3、功
44、能实现6.3.1、验证短信1、所用技术图 612 jar包截图commons-logging。jar包是使用spring的必备包,用来记录程序运行时的活动的日志记录.commons-httpclient-3.1。jar:HttpClient在处理服务器认证几乎是完全透明的,仅仅只需要开发人员提供登录信息。Commons项目中用来处理常用的编码方法的工具类包,例如DES、SHA1、MD5、Base64, 及 hex,metaphone, soundex 等编码演算。2、 代码实现系统随机生成六位数的验证码,验证码和系统自定义的段性内容组合,通过前台请求得到的手机号,利用SMS提供的网关密钥将验证短信发送到手机号码对应的用户中。图 6-13 短信验证代码实现6。3.2、图片上传1、所用技术使用SingMVC 注解上传文件,需要需要配置几个信息:1).form表单中enctype