Springboot 酒类商城平台
一、引言
随着电子商务不断发展,企业商品网络化已经成为一种时尚,而中
小企业如何利用有限资金搭建自己电子商务网站显得尤重要。本文以
Java 技术开发“网上酒类网站”为例,介绍设计构思、实现、数据安全
内容。也实现了利用计算机来进行销售行为,克服传统销售的局限,为
用户商家提供了最高效率和最便捷手段。对购物车进行了封装修改。大
大的提高的了代码模块性以及可移植性要满足消费者个性化要求,提供
专业化的产品线和专业水准的服务至关重要。今后若干年内我国网上购
物人口仍将是以中高收入水平的人群为主。 他们购买力强受教育程度较
高,生活的个性化需求比较强烈。特别是对那些技术含量、知识含量较
高的商品和服务等,人们一般希望在购买前能够得到一定对比。因此,
能够提供一条龙服务的“垂直型电商网站”以及某一类产品和服务的“专
业网站”发展潜力更大电子商务是在 Internet 上进行商务活动,即利
用计算机网络进行产品、服务、信息等买卖。 在线酒类商城系统是一个
典型的电子商务网站。它正是利用了电子信息技术,以互联网为媒介进
行电子商务活动。
一、 绪论
1.1 系统开发背景
随着计算机和网络日趋普及和技术的飞速发展,越来越多的商家开
始研发和部署基于互联网的应用。 建立自己网站, 发布商业信息, 大
刀阔斧的开展电子商务。 现在琳琅满目的网店商品更是吸引着消费者的
眼球, 消费者通过电子商务足不出户就能买到自己需要的并且是精心
挑选的商品,方便、快捷又轻松。而对于商家来说,电商的经营模式是
高效的、低成本的,所以对于商家来说是有利可图的。中国的酒类用品
行业迎来了大变革的大发展,需求量的扩大让国内的家居行业建立起种
类齐全并与国际接轨的完整商业体系。 国内的专业人士也非常看好晚上
酒类行业的发展前景,认为发展潜力很大。
1.2 系统开发意义
随着计算机和网络日趋普及和技术的飞速发展。网站商品可以让消
费者在每天所有时间段购买店铺货架上提供的商品,不需要店员照看店
面。 只要消费者根据自己的喜好选择了合适商品,在线下单,完成消费
过程就可以。不受地理位置影响。网购屏蔽地理位置给消费者带来的影
响。就商品位置而言,若通过网上消费在深圳买一部手机, 消费者只需
通过网上商城下单,那么手机就会通过物流运到消费者手里,不用消费
者到实体店里面慢慢挑选了,大大节约时间和空间成本。不受店铺空间
的限制。哪怕是街边小店,在网上却可以拥有大店面,只要投资者愿意,
可以摆上成千上万种商品信息。目前国内最大专业拍卖网站同时在线商
品要超过 接近 10 万件,解决了货物积压和存放问题。消费者数量越来
愈多。互联网普及,让越来越多的人成为网民,如此多的网名为网上消
费打下了基础到现在,手机通信越来越发达,随身携带随时购物的便捷
性的体现,网上消费将会更多。投资少,回报率高。网上开店建店成本
非常小,另外不会因为回笼资金较慢影响货品销售,商城可以通过在线
销售得到高回报收入。
1.3 项目的可行性研究设计
此系统需要 java 面向对象编程基础,数据库应用知识以及功能分析。
根据目前阶段所掌握的知识,根据这学期以及之前学习掌握的 java 编程
知识和数据库应用知识以及前端知识做出一个这样的基于 Javaweb、
springboot 轻量级框架网页版的酒类商城系统。
1.4.社会可行性
在互联网技术高速发展的今天,通过互联网的传播会让企业更容易
的创造更多的经 济效益,通过网上销售,有了更大的市场,在这样一个
大环境下把资源统筹规化起来,就会获得高效的收益。
1.5 经济可行性分析
缩短了供货周期,压缩了库存,裁减了人员,于是就可以依据缩短时间的天数
和库存物资的减少, 及裁减人员的工资等, 使原材料和劳动力资源得到更合理的
利用 从而提高了大多数信息化建设项目降低了不少成本,避免了多消耗,减少多管
理费用的支出等等。使管理人员决策及时、 准确、更科学化 ,使企业上下级的信息
流通结构更趋合理 。
1.6 相关技术说明
spring
Spring 框架是 Java 平台上的一种开源应用框架,提供具有控制反转特性的容器。
尽管 Spring 框架自身对编程模型没有限制,但其在 Java 应用中的频繁使用让它备
受青睐,以至于后来让它作为 EJB(EnterpriseJavaBeans)模型的补充,甚至是替
补。Spring 框架为开发提供了一系列的解决方案,比如利用控制反转的核心特性,
并通过依赖注入实现控制反转来实现管理对象生命周期容器化,利用面向切面编程
进行声明式的事务管理,整合多种持久化技术管理数据访问,提供大量优秀的 Web
框架方便开发等等。Spring 框架具有控制反转(IOC)特性,IOC 旨在方便项目维护
和测试,它提供了一种通过 Java 的反射机制对 Java 对象进行统一的配置和管理的
方法。Spring 框架利用容器管理对象的生命周期,容器可以通过扫描 XML 文件或类
上特定 Java 注解来配置对象,开发者可以通过依赖查找或依赖注入来获得对象。
Spring 框架具有面向切面编程(AOP)框架,SpringAOP 框架基于代理模式,同时运
行时可配置;AOP 框架主要针对模块之间的交叉关注点进行模块化。Spring 框架的
AOP 框架仅提供基本的 AOP 特性,虽无法与 AspectJ 框架相比,但通过与 AspectJ 的
集成,也可以满足基本需求。Spring 框架下的事务管理、远程访问等功能均可以通
过使用 SpringAOP 技术实现。Spring 的事务管理框架为 Java 平台带来了一种抽象机
制,使本地和全局事务以及嵌套事务能够与保存点一起工作,并且几乎可以在 Java
平台的任何环境中工作。Spring 集成多种事务模板,系统可以通过事务模板、XML
或 Java 注解进行事务配置,并且事务框架集成了消息传递和缓存等功能。Spring 的
数据访问框架解决了开发人员在应用程序中使用数据库时遇到的常见困难。它不仅
对 Java:JDBC、iBATS/MyBATIs、Hibernate、Java 数据对象(JDO)、ApacheOJB 和
ApacheCayne 等所有流行的数据访问框架中提供支持,同时还可以与 Spring 的事务
管理一起使用,为数据访问提供了灵活的抽象。Spring 框架最初是没有打算构建一
个自己的 WebMVC 框架,其开发人员在开发过程中认为现有的 StrutsWeb 框架的呈现
层和请求处理层之间以及请求处理层和模型之间的分离不够,于是创建了 SpringMVC。
Spring MVC
Spring MVC 框架是有一个 MVC 框架,通过实现 Model-View-Controller 模式来
很好地将数据、业务与展现进行分离。从这样一个角度来说,Spring MVC 和
Struts、Struts2 非常类似。Spring MVC 的设计是围绕 DispatcherServlet 展开的,
DispatcherServlet 负责将 请求派 发到特定的 handler。通 过可配置的 handler
mappings、view resolution、locale 以及 theme resolution 来处理请求并且转到
对应的视图。Spring MVC 请求处理的整体流程如图:
mybatis
mybatis 是对 jdbc 的封装,它让数据库底层操作变的透明。mybatis 的操作都
是围绕一个 sqlSessionFactory 实例展开的。mybatis 通过配置文件关联到各实体类
的 Mapper 文件,Mapper 文件中配置了每个类对数据库所需进行的 sql 语句映射。在
每次与数据库交互时,通过 sqlSessionFactory 拿到一个 sqlSession,再执行 sql
命令。
页面发送请求给控制器,控制器调用业务层处理逻辑,逻辑层向持久层发送请
求,持久层与数据库交互,后将结果返回给业务层,业务层将处理逻辑发送给控制
器,控制器再调用视图展现数据
SpringBoot
SpringBoot 是由 Pivotal 团队在 2013 年开始研发、2014 年 4 月发布第一个版
本的全新开源的轻量级框架。它基于 Spring4.0 设计,不仅继承了 Spring 框架原有
的优秀特性,而且还通过简化配置来进一步简化了 Spring 应用的整个搭建和开发过
程。另外 SpringBoot 通过集成大量的框架使得依赖包的版本冲突,以及引用的不稳
定性等问题得到了很好的解决。
SpringBoot 所具备的特征有:
(1)可以创建独立的 Spring 应用程序,并且基于其 Maven 或 Gradle 插件,可
以创建可执行的 JARs 和 WARs;
(2)内嵌 Tomcat 或 Jetty 等 Servlet 容器;
(3)提供自动配置的“starter”项目对象模型(POMS)以简化 Maven 配置;
(4)尽可能自动配置 Spring 容器;
(5)提供准备好的特性,如指标、健康检查和外部化配置;
(6)绝对没有代码生成,不需要 XML 配置。 [1] [2]
SpringBoot 框架中还有两个非常重要的策略:开箱即用和约定优于配置。开箱
即用,Outofbox,是指在开发过程中,通过在 MAVEN 项目的 pom 文件中添加相关依
赖包,然后使用对应注解来代替繁琐的 XML 配置文件以管理对象的生命周期。这个
特点使得开发人员摆脱了复杂的配置工作以及依赖的管理工作,更加专注于业务逻
辑。约定优于配置,Convention over configuration,是一种由 SpringBoot 本身
来配置目标结构,由开发者在结构中添加信息的软件设计范式。这一特点虽降低了
部分灵活性,增加了 BUG 定位的复杂性,但减少了开发人员需要做出决定的数量,
同时减少了大量的 XML 配置,并且可以将代码编译、测试和打包等工作自动化。
SpringBoot 应用系统开发模板的基本架构设计从前端到后台进行说明:前端常
使用模板引擎,主要有 FreeMarker 和 Thymeleaf,它们都是用 Java 语言编写的,渲
染模板并输出相应文本,使得界面的设计与应用的逻辑分离,同时前端开发还会使
用到 Bootstrap、AngularJS、JQuery 等;在浏览器的数据传输格式上采用 Json,
非 xml,同时提供 RESTfulAPI;SpringMVC 框架用于数据到达服务器后处理请求;到
数据访问层主要有 Hibernate、MyBatis、JPA 等持久层框架;数据库常用 MySQL;开
发工具推荐 IntelliJIDEA。