Java 家具商城平台
一、引言
随着国内外信息技术的发展和信息时代的到来,信息化、知识化、
全球化已成为当前经济发展的三大趋势。人类社会信息化将导致一场信
息革命,它使我国政府和公众 对信息作用的认识不断深化 。社会公众
通过信息网络获取信息的积极性日益提高。从近几年来看,信息的快速
发展为人们带来的非常大的便利,我们可以直接通过互联网了 解到任何
信息,也能非常轻松的购买到任何商品。同时由于计算机技术和网络技
术的应 用,人们的学习速度在不断加快,从数字处理时代到微机时代,
到现在的网络化时代,学习速度越来越快,这要求我们的管理模式也要
适应新的特点和新的模式。信息技术的发展对人们学习知识、掌握知识、
运用知识提出了新的挑战
一、 绪论
1.1 系统开发背景
随着计算机和网络的日趋普及和技术的飞速发展,越来越多的商家
开始研发和部署基于互联网的应用。 建立自己的网站, 发布商业信息,
大刀阔斧的开展电子商务。 现在琳琅满目的网店商品更是吸引着消费者
的眼球, 消费者通过电子商务足不出户就能买到自己需要的并且是精
心挑选的商品,方便、快捷又轻松。而对于商家来说,电商的经营模式
是高效的、低成本的,所以对于商家来说是有利可图的。中国的家居用
品行业迎来了大变革的大发展,需求量的扩大让国内的家居行业建立起
种类齐全并与国际接轨的完整商业体系。 国内的专业人士也非常看好家
居行业的发展前景,认为发展潜力很大。另外很多国外的企业也入住国
内,在国内得到较好的发展。家居行业也是中国制造业不可或缺的一部
分,李克强总理提出中国制造 2025 纲领,我们的家居行业也要响应国
家号召,为中国家居制造业创立一个良好的契机,让我们通过“三步走”
实现制造强国的战略目标能够顺利完成。同时随着结算方式的改变,以
前的“送货上门、到货付款”或“邮寄上门、贷款邮资先付”的方式不
仅浪费了人力物力,而且限制了网络的覆盖范围和商品的结构种类,现
在越来越多的人使用网上交易支付,它现在已经能够做到相对安全、方
便快捷,给我们的生活带来很大的便利。
1.2 系统开发意义
家居商品是在网上直接购买, 有专门的人会把东西送到消费者面
前, 通过虚拟的网站购物商城可以让消费者足不出户地轻松购物,让购
物的过程变得轻松、方便、快捷。电子商务系统由于具有营业时间自由、
店面空间不受限制、地理位置不受影响、资金周转灵活、投资少回报快、
消费群体数量庞大等优点,因此得到了快速地发展,在现代社会的商务
活动中具有重要的作用。店铺 24 小时不关门。网上家居商城可以让消
费者在每天的任意时间段购买店铺货架上提供的商品,不需要店员来照
看店面。 只要消费者根据自己的喜好选择了合适的商品,在线下下单,
完成消费过程就可以了。不受地理位置的影响。网购购物可以有效的屏
蔽地理位置给消费者带来的影响。就商品的位置而言,假如通过网上消
费在深圳买一部手机, 消费者只需通过网上商城下单,那么手机就会通
过物流运到消费者的手里,不用消费者到实体店里面慢慢挑选了,大大
的节约时间和空间成本。不受店铺空间的限制。哪怕只是街边小店,在
网上却可以拥有百货大楼那么大的店面,只要投资者愿意,可以摆上成
千上万种商品。目前国内最大的专业拍卖网站同时在线的商品要超过 10
万件,已超过一些大超市。解决了货物积压和存放的问题。消费者数量
多。互联网的普及,让越来越多的人成为网民,其中,就中国而言,已
经连续 5 年成为世界上网民最高的国家。 如此多的网名为网上消费打
下了基础到现在,手机通信越来越发达,随身携带随时购物的便捷性的
体现,网上消费将会更多。投资少,回报率高。网上开店建店成本非常
小,另外不会因为回笼资金较慢影响货品,商城可以通过在线销售得到
高回报。
1.3 项目的可行性研究设计
此系统需要 java 面向对象编程基础,数据库应用知识以及功能分析。
根据目前阶段所掌握的知识,根据这学期以及之前学习掌握的 java 编程
知识和数据库应用知识以及前端知识做出一个这样的基于 Javaweb、
springboot 轻量级框架网页版的家具商城系统。
1.4.社会可行性
在互联网技术高速发展的今天,通过互联网的传播会让企业更容易
的创造更多的经 济效益,通过网上销售,有了更大的市场,在这样一个
大环境下把资源统筹规化起来,就会获得高效的收益。
1.5 技术可行性
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 框架用于数据到达服务器后处理请求;到