1、基于 web 的服装销售系统的设计与实现北方民族大学学士学位论文论文题目: 服装销售系统的设计与实现 院(部)名 称: 计算机科学与工程学院 学 生 姓 名: 专 业: 软件工程 学 号: 指导教师姓名: 论文提交时间: 论文答辩时间: 学位授予时间: 基于 web 的服装销售系统的设计与实现I服装销售系统的设计与实现摘 要伴随着目前互联网的飞速的发展,人们的生活方式呢也随之发生了非常大的变化。随着电子商务不断被众人所接受,网上服装销售作呢是作为电子商务的一种形式正在以它高效率,低成本,低消耗的优势,逐步成为一种新的经营模式和经营理念。人们可以便捷的通过网络来实现网上线上购物,不去实体店也能够
2、买到逞心如意的服饰。越来越多的企业提供网上销售的功能,吸引了越来越多的网消费者,同时还给给企业降低了与实体店相比的各种经营成本,带来更大的收益。本系统是一个基于 B/S 模式构建的一个服装销售系统。本系统在技术实现上采用了目前较为火热的 J2EE 技术和 JSP 技术和 Spring 框架和 MyBatis 框架以及 PHP 史最快的框架 Phalcon 框架等技术。系统主要功能有游客商品的浏览,检索,分类查询,前台用户注册和登录操作、浏览商品操作、商品检索操作、购物车操作以及订单管理操作和个人信息管理操作等,后台会员管理、商品分类管理、字典管理、上传商品、上下架商品、订单管理。本系统采用开源
3、而且免费的 MySQL5.6 数据库来管理服装销售系统的数据。 关键词:网上销售购物商城;服装销售系统;JSP 技术;Spring 框架;MyBatis框架;Phalcon 框架基于 web 的服装销售系统的设计与实现IIThe design and implementation of clothing sales systemAbstractAlong with the rapid development of the Internet, peoples way of life has also been a very big change. Along with the electroni
4、c commerce has been accepted by all, online clothing sales is as a form of e-commerce is with its high efficiency, low cost, the advantages of low consumption, and gradually become a new business model and business philosophy. People can easily through the Internet to achieve online online shopping,
5、 also can go to the store to buy clothes not feel fully satisfied. More and more enterprises to provide online sales function, has attracted more and more network consumers, while also to the enterprise to reduce the operating costs compared with the physical store, bring more revenue.The system is
6、based on a B/S model to build a clothing sales system. The system in the technical realization of the current more fiery J2EE technology and JSP technology and Spring framework and MyBatis framework and PHP history of the fastest framework Phalcon framework and other technologies. The main functions
7、 of this system include tourist commodity browsing, retrieval, query classification, the onstage user registration and login operation, browse merchandise operation, commodity retrieval operation, shopping cart and order management operation and personal information management operation, and members
8、hip management background, the classification of goods tube, dictionary management, upload commercial, off the shelf products, order management. This system uses the open source and free MySQL5.6 database to manage the data of the clothing sales system.Keywords: online shopping mall sales; clothing
9、sales system; JSP technology; Spring framework; MyBatis framework; Phalcon framework.基于 web 的服装销售系统的设计与实现III目 录摘 要 IAbstract.II第一章 绪论 .11.1 论文研究的目的和意义 .11.2 本文的主要目标 .11.3 论文的组织结构 .1第二章 相关技术 .32.1 开发工具 32.2 网站开发语言 Java、PHP 介绍 32.3 框架 Spring、MyBatis、Phalcon 介绍 .32.3.1 Spring 轻量级架构 42.3.2 MyBatis 框架 .4
10、2.3.3 Phalcon 框架 .42.4 JSP 介绍 .42.5 数据库 MySQL5.6 介绍 .4第三章 需求分析 .63.1 系统的需求概述 .63.2 系统的功能需求 .63.3 系统的非功能性需求 63.4 系统的可行性分析 63.4.1 经济可行性 .73.4.2 技术可行性 .7第四章 系统设计 .84.1 系统设计思想 .84.2 系统总体结构设计 .84.2.1 游客模块的设计 .84.2.2 普通用户模块的设计 .94.2.3 后台管理模块的设计 104.3 系统用户的功能设计 .114.3.1 游客的功能设计 114.3.2 普通用户功能设计 114.3.3 管理员
11、用户功能设计 124.4 数据库设计 .124.4.1 数据库的概念结构设计 124.4.2 数据库的逻辑结构设计 13第五章 系统实现 175.1 游客功能实现 .175.2 普通用户功能实现 .225.2.1 用户登陆 225.3 后台管理功能实现 .24基于 web 的服装销售系统的设计与实现IV5-3-1 用户中心 245-3-2 分类管理 275-3-3 商品中心 275-3-4 订单管理 31结束语 .35致 谢 .36参考文献 .37基于 web 的服装销售系统的设计与实现1第一章 绪论1.1 论文研究的目的和意义众所周知,当下服装销售系统已经发展的很成熟了,在世界上有着不可以阻
12、挡的迅速发展流行势头,而因特网的发展呢也成为促进了网商的经济的繁荣,在这样的大潮流中,服装销售系统的设计与已实现逐步走向历史的舞台。而基于 web 的服装销售系统的这种设计和发展方式必将是一种不可逆的潮流,被众人所接受,所喜爱,成为电子商务系统发展的路标和指明灯。电商本身作为一种改变人们生活方式的发展模式,它与互联网相结合之后,发展更加迅猛,使得人们更加简单简易不分时间、地点的在网上商城中浏览自己所需要的商品。也大大降低了物质交换的成本,通过网络进行购物的服装销售系统。越来越多的消费者希望能通过网上购物来替代去实体商场去购物,这种消费的方式,不仅仅使得消费者有更多的选择,更重要的是消费者可以更
13、加方便快捷在互联消费。同时采用这种方式可以有效地控制“商场”的运营成本,比实体商城的运营成本减少了很多,开辟一中新鲜的营销模式。本文从服装销售系统架构的角度,基于目前非常流行的 J2EE 技术、MVC 架构、Spring 架构以及 Phalcon 等框架技术,设计一个网上购物商城的系统,在毕业设计中有现实的应用价值。1.2 本文的主要目标设计本系统的主要目标,就是实现商家通过网络传发布商品,用户浏览网站来进行网上服装交易,实现管理员对商品信息的管理和系统用户以及对其用户的管理,除此之外,还有管理员对系统的设置和维护工作。设计出的服装销售系统的优势在于用户不需要去实物店或者商城就能够购买到自己心
14、仪的服装,能够使用户根据自己需求分类检索商品,或者模糊查找,提高用户寻找商品的效率,从而促进商品的交易率,也方便了用户出门难的问题。1.3 论文的组织结构 通过对服装销售系统的设计与实现,将论文的组织结构分为以下五章内容。第一章为绪论,主要描述了论文的研究目的和意义,系统要实现的主要目标以及论文的组织结构。第二章为相关技术,介绍了在本系统开发过程中使用到的工具和开发语言以及相关技术。第三章为需求分析,主要分析了系统的功能需求、非功能需求,以及对系统的可行性方面的分析,从而体现开发此系统价值。基于 web 的服装销售系统的设计与实现2第四章为系统设计,主要根据需求分析,论述了开发此系统的设计思想
15、,系统的总体结构设计、系统各个模块的功能结构的设计以和系统的数据库的设计。第五章为系统的实现,主要是对整个系统功能实现的界面展示,主要义务代码的展现,并介绍每个界面所实现了哪些功能。论文最后为结束语,致谢和参考文献以及诚信承诺书。基于 web 的服装销售系统的设计与实现3第二章 相关技术2.1 开发 工具本系统的开发工具一,MyEclipse 10,是 Java 开发的主流工具,是 J2EE 集成开发环境,支持 HTML,CSS,JavaScript,Spring,Spring MVC,JSP,SQL,MyBatis。MyEclipse 10 对开发周期管理以及对 Spring 和 MyBat
16、is 的更好支持,同时强大的代码提示功能还提升开发发速度。本系统的开发工具二,Phpstorm2016.1 是一个轻量级且便捷的 PHP IDE,其旨在提供用户效率,可深刻理解用户的编码,提供智能代码补全,快速导航以及即时错误检查。其功能十分丰富,PHP 集成开发环境,支持 HTML, Phalcon、JavaScript、CSS 等,该工具启动速度快,完美的代码提示功能,优雅的界面风格,提供自动保存功能,不用担心电脑突然断点代码为保存。2.2 网站开发语言 Java、PHP 介绍Java 语言是一种可以编写跨平台应用程序的面向对象的程序设计语言。Java 语言拥有极强的通用性,平台一移植性,
17、安全性,随处的都可以见到 Java 的影子,广泛用在数据库开发,游戏开发,科学超级计算机、移动 app、硬件植入程序和互联网的开发。是一种很很热门的计算机语言,发展历史较短,拥有全球最大的开发者专业群。Java 程序可以支持智能消费型电子产品的开发,各种应用程序的开发包括个人应用程序和企业级的应用程序,尤其是网络程序的开发。之所以用 Java 语言开发是因为 Java 语言编写程序比较严谨,每次修改代码需编译后方可执行,而且调试花费的时间也相对较短。PHP 语言,PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。它的语法
18、风格吸收了 C 语言、Java 和 Perl的特点,利于学习和使用,主要适用于 Web 网站开发的领域。PHP 独特的语法混合了 C、Java、Perl 以及 PHP 自创的语法。它可以比 CGI 或者 Perl 更快速地执行动态网页。用 PHP 做出的动态页面与其他的编程语言相比,PHP 是将程序嵌入到 HTML 文档中去执行,执行效率比完全生成 HTML 标记的 CGI 要高许多;PHP 还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快,并且 PHP 无须编译即可直接运行,深受广发 web 开发者的喜爱。2.3 框架 Spring、MyBatis、Phalcon 介绍S
19、pring、MyBatis 是基于 Java 的开源框架,是目前比较流行的一种 Java web应用程序的开源框架。基于 web 的服装销售系统的设计与实现4Phalcon 则是开源的、全功能栈的、使用 C 扩展编写的,针对高性能优化的 PHP 5 框架,是一套实现 MVC 架构的高性能 PHP 应用程序框架。集数据库对象操作与一身的 PHP 框架,称作世上最快的 PHP 框架2.3.1 Spring 轻量级架构Spring 有分层的体系结构,也就是说你可以选择只使用它的任何一个独立的部分,而其他的仍然使用相关的实现。侧重于减小开发的复杂度,相应的处理能力就有所减弱,比较适合于中小型企业应用,
20、使用 Spring 构建的应用程序易于单元测试,Spring 提供一些 web 应用上的 EJB 的替代方案,为数据存取提供了一个一致的框架。2.3.2 MyBatis 框架之所以使用 MyBatis 框架第一是因为它对 JDBC 访问数据库的代码做了封装,大大的简化了数据库访问层烦琐的重复性代码。第二提供的持久层框架包括 SQL Maps和 Data Access Objects(DAO)。MyBatis 的性能非常好,使用非常灵活,因为它不仅仅是一款开源的免费框架,而且一样都是轻量级框架,支持各种关系数据库。2.3.3 Phalcon 框架Phalcon 是一套实现了 MVC 架构的超高性
21、能的 PHP 应用程序框架。初始版本发布于 2012 年 11 月,开放源代码并基于 BSD 授权条款。与其他大部分的 PHP 框架不同,Phalcon 是以扩充的方式以 C 语言所编写,因此 Phalcon 的执行速度高过其他PHP 框架,并且消耗更少的资源,根据官方的测试,Phalcon 是目前世界上速度最快的 PHP 框架, 没有之一。2.4 JSP 介绍JSP(Java Server Pages),学习过软件开发的学生都很熟悉的这个 Java 服务器语言他简化了 Servlet 的开发设计是由血多公司参与开发设计的一门动态网页技术标准,它可以在网页文件里插入了程序片段和 html 标记
22、,经过编译,从而形成Servlet 类。Java web 程序选择它的原因是用它开发的应用是跨平台,开发后可以在不同的平台中运行,其次有一个非常方便之处是我们常使用它的原因是它的所有对程序的操做都是统一在服务器端执行,最后返回执行后的 html 静态结果页面,而客户端上的只是服务端生成的 html 文件结果。2.5 数据库 MySQL5.6 介绍MySQL 广大开发者所使用的一种开源关系型数据库系统,在本系统设计中采用的是 MySQL5.6,MySQL 数据库系统是使用使用最频乏的数据库管理语言,结构化数据库查询语言(SQL)进行数据库的管理。基于 web 的服装销售系统的设计与实现5除此之外
23、 MySQL5.6 还结合了分析、报表、集成和通知的功能。还可以紫东苑函数,存储过程,方便不同需求下的定义,使任何一家企业可以构建和部署经济有效的 BI 解决方案,帮助企业的团队 Dashboard、Web services 和移动设备将数据应用推向业务的各个领域。基于 web 的服装销售系统的设计与实现6第三章 需求分析3.1 系统的需求概述所谓需求分析就是分析系统的用户的需求是都有哪些。简单的说,需求就是承述系统必须要实现的功能或者系统必需具备的特征或能力,需求从本质上可以分为功能需求和非功能需求。3.2 系统的功能需求系统的功能需求与系统必须执行的过程或必须含有的功能或者包含的信息直接的
24、关系。在本系统中,功能需求有一下几点,前台用户注册,用户账号激活,登陆,用户信息管理(修改基本信息,修改密码,上传头像),商品信息浏览,分页查询,模糊搜索,分类检索,添加到购物车,商品购买,商品评价,后台商品分类管理(添加,修改,删除),字典管理(尺寸,颜色),上传商品,上架商品,下架商品,删除商品,用户管理(修改,查询,密码重置),管理员管理,订单管理,导出订单,发货管理。3.3 系统的非功能性需求非功能需求是指系统依据某些条件系统运作情形或其特征性,而不是系统必须拥有的行为或属性。它解决了如何使这个系统在实际运行环境中的运行。非功能需求主要应用于设计阶段。本系统的非功能需求可分为系统的性能
25、需求,安全性需求,易用性需求,可靠性需求,有效性需求。性能需求,用户在使用软件时的响应速度要快、系统资源消耗要低、结果精准度要高。安全性,用户在注册、授权控制、商品购买、用户隐私等方面的的安全保障。权限不足的用户访问不能访问的资源时,具备防盗链能力。易用性,用户操作界面的简洁大方,易于操作,用户使用手册。可靠性,用户在使用系统的过程中失效的频率不得太高,严重损坏之后容易恢复。有效性,当用户访问不存在的资源时,系统要能够处理这种请求。3.4 系统的可行性分析如今的在市场竞争日益激烈,信息划管理已成为企业赖以提升竞争力的重要手段。同时,我国服装企业决策者往往集管理者、执行者等多种身份于一身,不利于
26、信息的整体把握和及时处理。长时间以来,中型服装公司一直采用手工管理方式经营,原材料采购、提货、进货、下单、货物入库和核算的信息管理存在工作量大、基于 web 的服装销售系统的设计与实现7服务质量差、工作效率低、耗费人员,客户意见不能及时反馈,客户满意度低等问题。为了改善生产销售管理的落后局面,所以基于 web 的服装销售系统的建设,可以提高工作效率、加快信息反馈、提高服务质量、增强竞争实力有着重大意义。3.4.1 经济可行性开发本系统的好处在于它极大的减轻了工作人员的工作量,减少人力资源的浪费,并且还提高了工作人员的工作效率,节约了大量的人力物力和财力。因此在经济上是可行的。 现实生活中,大部
27、分人忙于工作,生活压力,甚至都没时间给自己置办一身服饰,而本系统能为他们带来便捷,他们无须在商城中左挑右选,浪费宝贵的时间,他们可以利用工作的额外时间进行网上选购商品。经过调查发现上班族中,大部分人都喜爱网购,所以经济上也是可行的。 3.4.2 技术可行性技术可行性主要是技术风险分析,技术是否能够做到,开发本系统前台功能是在 MyEclipse 开发工具下完成开发的,前台功能主要利用网站开发语言 Java 进行编程。商品后台管理部分功能主要使用 PHP 语言,PHP 作为服务器端的脚本语言,支持在线编程,无须编译即可运行,可大大缩短开发周期,并且使用当下称最快的PHP 框架即 Phalcon,
28、后台数据库采用 MySQL5.6,是一种开放源代码的关系型数据库管理系统,在性能支持以及接口上,相比其他数据库要更加适合中小型系统网站。继而,该系统在技术上是可行的。 基于 web 的服装销售系统的设计与实现8第四章 系统设计4.1 系统设计思想系统的设计思想是首先要建立一个完善的网络体系结构,从而对系统整体的开发构成一个良好的开端。从而有一个正确的设计思想,正确合理的选择开发工具与环境去构成一个网络体系结构,充分发挥基于 web 的服装销售系统的优势。在此系统的设计中利用了网络软件、硬件提供的各种安全措施,在明确了系统的各个功能设计的基础上,具有有效性即有用性和可用性以及比较高的安全性和先进
29、性。本系统使用 Java、PHP 开发语言进行前台及后台功能的开发,使用 MySQL5.6数据库作为网站后台数据库。,可维护性,主要维护方面包括软件的及时更新与更改,以及硬件环境的配置等,最后是系统的发布、部署。4.2 系统总体结构设计前台游客,进入系统首页,浏览商品,检索商品以及分类查询服装信息。当游客选中喜爱的服装之后,若想要购买或者添加购物或者收藏,需先登陆系统,没有账户,先注册,用户注册完(或者登陆)之后,可进入系统首页,选择洗好的商品进行添加购物车或者下单购买。游客成为系统会员之后,可以在用户中心进行用户基本信息的修改,可以添加收货地址,修改收货地址。当用户想要给商品发布评论时,先检
30、查用户是否登陆,若登陆了,在检查用户是否购买过此商品,若购买过此商品,则用户可以参与商品的评价。后台系统管理,管理员登陆后台系统,可以对普通用户进行管理,添加商品分类、修改商品分类、删除商品分类,商品字典管理,包括尺寸、颜色的增删改查,添加商品,上下架商品,查看商品,商品状态,导出用户订单,发货,管理普通用户,添加管理员,删除管理员,修改管理员。4.2.1 游客模块的设计游客访问系统时,进入商城首页,浏览商品信息,检索商品,服装分类查询,可以注册成为系统的普通用户。游客功能模块图,如图 4-1。基于 web 的服装销售系统的设计与实现9图 4-1 游客功能模块图4.2.2 普通用户模块的设计普
31、通用户模块设计主要是新用户的注册和登录,普通个人信息以及密码的修改,商品浏览,添加购物车,商品评价,产生订单。1)注册,未使用过本系统的用户第一次使用前需要注册,填写个人信息注册成功后即可。2)登录,注册成功后填写用户名和密码点击登录按钮进入普通用户界面。3)商品浏览,普通用户可以在浏览商品信息,查看商品详情。4)添加购物车,普通用户可以将自己喜爱的商品添加到购物车。5)个人信息,用户个人信息以及密码的修改。6)商品评价,用户购买过的商品可以参与商品评价。7)购买商品,用户选择商品后下单,货到付款的方式,即可生成订单。8)订单追踪,查看订单的发货状态。普通用户功能模块图如图 4-2。基于 we
32、b 的服装销售系统的设计与实现10图 4-2 普通用户功能模块图4.2.3 后台管理模块的设计后台管理模块的设计主要是后台登陆,普通用户管理,重置用户密码,商品分类,商品字典管理,包括尺寸、颜色,添加商品,上下架商品,查看商品,商品状态,导出用户订单,发货,添加管理员,删除管理员,修改管理员。1)登录,后台管理员填写用户名和密码点击登录进入本系统。2)普通用户管理,实现管理员分页查看用户列表,重置用户密码,查看用户状态3)个人信息,个人资料的修改或修改密码。4)商品分类,对商品分类的添加,修改,删除。5)字典管理,商品颜色的增、删、改、查,商品尺寸的增、删、改、查。6)商品管理,添加商品基本信
33、息,上传商品图册,修改商品基本信息、商品图册、商品介绍,删除商品以及商品相关的图片文件。7)商品评价,查看商品评价信息。8)订单管理,查看订单状态,导出订单,发货。9)管理员管理,添加普通管理员,修改普通管理员信息后台管理功能模块图如图 4-3。基于 web 的服装销售系统的设计与实现11图 4-3 后台管理员功能结构图4.3 系统用户的功能设计4.3.1 游客的功能设计1)浏览商品列表,游客进入系统后,可以分页浏览商品列表信息。2)检索商品,游客可以模糊搜索商品。3)分类查询商品,游客选择商品类别查询同类别商品信息。4)查看商品详情,查看商品的详细信息,包括商品名称、市场价与商城价、商品图文
34、、商品评价。5)注册系统,游客可以通过注册,成为本系统会员。4.3.2 普通用户功能设计1)登陆注册成功后填写用户名和密码点击登录按钮进入普通用户界面。2)商品浏览普通用户可以在浏览商品信息,查看商品详情。3)添加购物车普通用户可以将自己喜爱的商品添加到购物车。4)个人信息用户个人信息以及密码的修改,上传头像。5)商品评价用户购买过的商品可以参与商品评价基于 web 的服装销售系统的设计与实现126)购买商品用户选择商品后下单,选择付款方式,货到付款的方式,即可生成订单7)订单追踪追踪订单状态,查看订单是否发货。4.3.3 管理员用户功能设计1)后台登陆后台管理员填写用户名和密码点击登录进入本
35、系统后台。2)普通用户管理实现分页查看普通用户用户列表,重置用户密码,查看用户是否激活状态。3)个人信息用户个人信息以及密码的修改,上传头像。4)商品分类管理对商品分类的添加,修改,删除。5)字典管理商品颜色的增、删、改、查,商品尺寸的增、删、改、查。6)商品管理添加商品基本信息,上传商品图册,修改商品基本信息、商品图册、商品介绍,删除商品以及商品相关的图片文件7)商品评价查看商品评价信息8)订单管理查看订单状态,导出订单,发货9)普通管理员管理添加普通管理员,修改普通管理员信息4.4 数据库设计4.4.1 数据库的概念结构设计 基于 web 的服装销售系统 E-R 图如下,图 4-6。基于
36、web 的服装销售系统的设计与实现13图 4-4 系统功能模块 E-R 图4.4.2 数据库的逻辑结构设计系统的数据库表如下: admin 管理员表,如图 4-5。图 4-5 admin 管理员表address 用户收货地址表,如图 4-6。基于 web 的服装销售系统的设计与实现14表 4-6 用户收货地址表album 商品图册表,如图 4-7。表 4-7 商品图册表brand 商品品牌表,如图 4-8。表 4-8 商品品牌表cart 购物车表,如图 4-9。表 4-9 购物车表color 商品颜色表,如图 4-10。表 4-10 商品颜色表size 商品尺寸表,如图 4-11。基于 web
37、 的服装销售系统的设计与实现15表 4-11 商品尺寸表goods 商品表,如图 4-12。表 4-12 商品表goods_color 商品颜色关联表,如图 4-13。表 4-13 商品颜色关联表goods_size 商品尺寸关联表,如图 4-14。表 4-14 商品尺寸关联表goods_type 商品分类表,如图 4-15。基于 web 的服装销售系统的设计与实现16表 4-15 商品分类表order 订单表,如图 4-16。表 4-16 订单表users 普通用户表,如图 4-17。表 4-17 普通用户表基于 web 的服装销售系统的设计与实现17第五章 系统实现5.1 游客功能实现下面
38、的系统截图是游客进入到系统所见的首页界面,首页有商品大图展示,热销商品,商品分类列表,商品分类检索,商品检索,用户注册登陆等,如图 5-1。图 5-1 商城首页图功能截图执行流程图:基于 web 的服装销售系统的设计与实现181. 用户向服务器发送请求/index/toImdex.res,请求被 Spring 前端控制 ServeltDispatcherServlet 捕获;2. DispatcherServlet 对请求 URL 进行解析,得到请求资源标识符(URI)。3. DispatcherServlet 根据获得的 Handler,选择一个合适的 HandlerAdapter。4. 提
39、取 Request 中的模型数据,填充 Handler 入参,开始执行Handler(Controller)。5. Handler 执行完成后,向 DispatcherServlet 返回一个 ModelAndView 对象;6. 根据返回的 ModelAndView,选择一个适合的 ViewResolver(必须是已经注册到 Spring 容器中的 ViewResolver)返回给 DispatcherServlet ;7. ViewResolver 结合 Model 和 View,来渲染视图8. 将渲染结果返回给客户端。首页 IndexController 控制器 toIndex 代码如下
40、:RequestMapping(“/toIndex“)public String toIndex(HttpServletRequest request, Model model)/ 获取请求中的参数String sizeStr = request.getParameter(“pageSize“); / 分页 页大小String currStr = request.getParameter(“current“); / 当前页/ 初始化一个 Page 对象Page page = new Page();if ( sizeStr != null ) page.setPageSize(Integer.p
41、arseInt(sizeStr); else page.setPageSize(12);if ( currStr != null ) page.setCurrent(Integer.parseInt(currStr);else page.setCurrent(1);int count = dao.countGoodsItemd();page.setCount(count);page.setItems(dao.goodsList(page);List isHost = dao.isHostGoodsList(10);List goodsTypes = typeDao.twoLevelType(1
42、);/ 取二级商品分类, 需存入 sessionList types = new ArrayList();if (goodsTypes.size() 0) 基于 web 的服装销售系统的设计与实现19for (GoodsType gt : goodsTypes) gt.setChildren(typeDao.twoLevelType(gt.getId();types.add(gt);model.addAttribute(“types“, types);model.addAttribute(“page“, page);model.addAttribute(“isHost“, isHost);re
43、turn “index“;工具类 Page 代码:public class Page private Integer pageSize; / 每页大小private Integer begin; / 开始private Integer current; / 当前页private Integer total_page;/ 总页数private List items; / 分页结果集private String value; / 模糊搜索商品名称private int typeId; / 分类查询分类 Idprivate Integer count; / 总记录数/ 计算分页开始位置public
44、Integer getBegin() this.begin = (this.current-1)*this.pageSize;return begin;/ 计算总页数public Integer getTotal_page() if ( this.count%this.pageSize = 0 ) this.total_page = this.count/this.pageSize;else this.total_page = this.count/this.pageSize+1;return total_page;基于 web 的服装销售系统的设计与实现20数据模型层 dao 代码:Scan
45、Daopublic interface GoodsMapperDao / 统计商品数量public int countGoodsItemd();/ 查询所有商品,按时间排序public List goodsList(Page page);/ 热销商品 前 num 项public List isHostGoodsList(Integer num);/ 获取商品分类public List twoLevelType(Integer parentId);Mapper.xml:SELECT * FROM goods WHERE isShow=1 AND isHost=1 ORDER BY createT
46、ime DESC LIMIT #num SELECT * FROM goods WHERE isShow=1 AND isHost=1 ORDER BY createTime DESC LIMIT #num SELECT * FROM goods WHERE isShow=1 ORDER BY createTime DESC LIMIT #begin , #pageSize 基于 web 的服装销售系统的设计与实现21SELECT COUNT(*) AS count FROM goods WHERE isShow=1游客根据服装的名称模糊搜索服装,如图 5-2。图 5-2 服装模糊搜索功能截图
47、商品检索功能主要业务代码:RequestMapping(“/search“)public String search(HttpServletRequest request, Model model)String gName = request.getParameter(“goodsName“);String sizeStr = request.getParameter(“pageSize“);String currStr = request.getParameter(“current“);Page page = new Page();if ( sizeStr != null ) page.se
48、tPageSize(Integer.parseInt(sizeStr); else page.setPageSize(12);if ( currStr != null ) page.setCurrent(Integer.parseInt(currStr);else page.setCurrent(1);page.setValue(gName);int count = dao.countFuzzyItemd(page.getValue();page.setCount(count);page.setItems(dao.fuzzySelect(page);model.addAttribute(“pa
49、ge“, page);model.addAttribute(“goodsName“, gName);return “searchlist“;基于 web 的服装销售系统的设计与实现22游客通过注册,成为系统用户,包括验证码功能,用户注册功能,如图 5-3。如图 5-3 用户注册功能截图注册功能的实现代码:RequestMapping(“/doRegister“)public String register(User user, HttpServletRequest req, Model model, HttpSession session) String code = req.getParameter(“code“);/ 对用户密码进行 MD5 加密user.setPassword(UtilMD5.MD5(user.getPassword(