当前位置: > 论文中心 > 计算机论文 >

基于Spring MVC框架的电商平台的研究与设计

时间:2014-08-11 15:38 点击:
摘要:传统的电子商务网站的开发周期比较长,而且运营之后经常出现难以扩展、可维护性不高等问题。论文对Spring MVC进行了深入的研究,并基于它来构建了一个电子商务网站,使得电商网站具有良好的框架结构,对以后的维护和扩展工作提供了方便。 关键词:spri

  摘要:传统的电子商务网站的开发周期比较长,而且运营之后经常出现难以扩展、可维护性不高等问题。论文对Spring MVC进行了深入的研究,并基于它来构建了一个电子商务网站,使得电商网站具有良好的框架结构,对以后的维护和扩展工作提供了方便。

  关键词:spring MVC;estore;电子商务;freemarker

  中图分类号:TP39 文献标识码:A

  1 引言(Introduction)

  随着互联网宽带技术应用的成熟,以及物流和支付系统的完善,电子商务成为互联网普及应用的主流,影响着千家万户的生活和经济行为,并日益成为社会商业活动的重要形式。因此,各行业均希望可以快速展开网上营销渠道。新形式下,电商网站开发人员如何缩短开发周期,进一步提高工作效率,是每一个程序员所面临的问题。各大WEB框架的出现,使得电商网站服务器端逻辑的设计非常便利,利用它进行网站的开发,可以节省很多的时间和精力。本文基于Spring MVC来构建一个电子商务网站,希望可以对读者学习和使用Spring MVC建站产生一些帮助。

  2 网上电商平台Estore(Online electric business

  platform estore)

  2.1 Estore简介

  Estore是采用Java技术设计开发的网上电子商务平台,采用了Spring MVC3、Hibernate3和Freemarker相结合的技术架构。继承了Java高效、跨平台、稳定且安全等多方面的优点[1],能够支持Oracle、Sqlserver、Mysql等数据库,统一在后台管理网站的模板,用户可利用标签自定义显示内容和方式。

  2.2 Estore的运行环境

  Estore原则上支持全系列JAVA运行环境、数据库,主要使用以下环境:

  (1)WEB服务器:Weblogic、Tomcat、WebSphere、JBoss等。

  (2)数据库服务器:Oracle、Mysql、SqlServer、DB2等。

  (3)操作系统:Windows、Linux、Unix等。

  3 基于Spring MVC的电商平台的设计与开发

  (The design and development of electric business

  platform based on the spring MVC )

  3.1 Spring MVC简介

  3.1.1 Spring MVC架构

  Spring MVC的整体架构如图1所示[2],视图层采用Html或Jsp实现;控制层采用Servlet实现,整个框架采用同一个Servlet,以实现请求的中转;模型层采用Java实现,主要决定用来做什么;在模型层后面添加了一个DAO,目的是将决定做什么和具体怎么做分开。

  

  图1 Spring MVC的架构

  Fig.1 The architecture of spring MVC

  整个Web框架大致的流程是:首先客户端发送请求,提交Html或Jsp页面给中转器(Servlet);中转器按照客户的请求,选择相应的模型层,即Logic进行相应的逻辑处理;如果需要使用数据库,则通过DAO进行相应的数据库操作。

  3.1.2 Spring MVC重要组件

  

  

  图2 Spring MVC的组件

   Fig.2 The component of spring MVC

  Spring MVC的组件如图2所示[3]。

  (1)Spring MVC将所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责对请求进行真正的处理工作。

  (2)DispatcherServlet查询一个或多个HandlerMapping,找到处理请求的Controller。

  (3)DispatcherServlet把请求提交到目标Controller。

  (4)Controller进行业务逻辑处理后,会返回一个ModelAndView。

  (5)Dispathcher查询一个或多个ViewResolver视图解析器,找到ModelAndView对象指定的视图对象。

  (6)视图对象负责渲染并返回给客户端。

  3.2 Hibernate框架

  3.2.1 Hibernate简介

  Hibernate是一个开源免费的Java包,它使得程序与数据库的交互变得十分容易,更加符合面向对象的设计思想[4]。Hibernate使开发者可以专注于应用程序的对象和功能,而不用关心如何保存它们或查找这些对象。

  在对SQL语句完全不了解的情况下,使用Hibernate仍然可以开发出优秀的包含数据库访问的应用程序。

  3.2.2 Hibernate运行过程

  图3 Hibernate运行过程

  Fig.3 The running process of hibernate

  Hibernate的运行过程如图3所示。

  应用程序先调用Configuration类,该类读取Hibernate配置文件及映射文件中的信息,并用这些信息生成一个SessionFactory对象,然后从SessionFactory对象生成一个Session对象,并用Session对象生成Transaction对象。可通过Session对象的get()、load()、save()、update()、delete()和saveOrUpdate()等方法对PO(persistent object持久对象)进行加载、保存、更新、删除等操作。

  在查询的情况下,可通过Session对象生成一个Query对象,然后利用Query对象执行查询操作:如果没有异常,Transaction对象将提交这些操作到数据库中;如果有异常,则执行回滚操作。

  3.3 Freemarker简介

  FreeMarker是一个模板引擎[5],它由Java语言编写而成,基于模板来生成文本输出。FreeMarker与Web容器没有关系,即Web运行时,并不知道HTTP或Servlet。它不仅能够用于表现层的实现,而且还可以用于生成Xml、Jsp或Java等。FreeMarker允许Java servlet保持图形设计与应用程序逻辑的分离,这是通过在模板中封装Html完成的。模板用Servlet提供的数据动态地生成Html。模板语言是直观且强大的,编译器的速度快,输出接近静态HTML页面的速度。

  虽然FreeMarker具有一些编程的能力,但通常由Java程序负责要显示的数据,由FreeMarker生成页面,通过模板来显示数据。

  下面是用Freemarker来做的一个显示页面:

  

  [@post_list]

  [#list tag_list as post]

  [#list post.types as tlist]

  [#if tlist.name == "首页"]

   [/#if]

   [/#list]

   [/#list]

   [/@post_list]

  3.4 按Spring MVC框架分层设计电商平台

  3.4.1 Dao层

  Dao层分析模块所要涉及的表,确定表之间的关系,编写Hibernate Mapping文件和持久化类,它使用Hibernate连接数据库、操作数据库(增删改查)。根据模块需要的各种持久化操作,确定对应的方法,据此来编写Dao接口和实现类。


   论文榜(www.zglwb.com),是一个专门从事期刊推广、投稿辅导的网站。
本站提供如何投稿辅导,寻求投稿辅导代理,快速投稿辅导,投稿辅导格式指导等解决方案:省级投稿辅导/国家级投稿辅导/核心期刊投稿辅导//职称投稿辅导。


栏目列表
联系方式
推荐内容
 
QQ在线咨询
投稿辅导热线:
189-6119-6312
微信号咨询:
18961196312