基于moqui框架的电商开发

2017-03-17 11:19李涛杨晨光王振铎
电脑知识与技术 2016年32期
关键词:互联网电商

李涛++杨晨光++王振铎

摘要:随着互联网+的兴起,电商网站开发需求越来越多。如何快速开发出、界面美观、性能优异、安全性高的电商网站成为开发人员关注的焦点问题。传统的SSH框架已经不能满足系统的架构,新兴的moqui框架能够提供开发周期短、性能好、安全性高的电商网站。在开发中采用moqui的生态系统,以一个共同框架和一系列通用的业务构件为中心的软件包,设计和开发了电商系统,该系統具有界面美观、性能良好的特点。

关键词:电商;moqui;互联网+

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2016)32-0271-03

电子商城已经成为一种常见的购物方式,人们越来越喜欢电子商城的方便快捷。但是一个电子商城如何才能在众多的竞争者中脱颖而出?怎么才能更加吸引用户的眼光和购物欲望呢?开发者如何在低成本下开发出受大众喜爱的电商网站呢?传统的SSH框架开发已经很成熟,但是大部分的功能还是需要开发者编写实现,费时费力,在团队开发过程中系统结构混乱,造成维护困难[1]。我们基于此种原因引进了moqui开发框架。Moqui框架是一个全功能的企业级应用开发框架,基于Groovy和Java语言,这个开发框架中包含了一系列的工具用于开发界面、服务、实体以及声明式构件安全和多租户支持等高级功能特性。这个框架十分适合于开发各种简单的 web 应用站点以及小规模的复合ERP系统。构建Moqui框架基础上的应用系统十分容易部署在各种高扩展性的基础软件上 (例如 Java Servlet容器或者应用服务器),并支持传统的关系型数据库以及很多现代的非关系型NoSQL数据库上。

1 moqui框架

Moqui 开发框架的工具集都是围绕着构件进行组织的,同时这些构件允许你进行创建来 体现应用系统的通用部分。在 Moqui 框架中,构件指的是你作为开发人员创建的各种 XML 文件甚至是脚本或者其他代码。框架中支持如下的几种类型的构件:

(1)实体 entities :贯穿于整个业务系统中的关系数据模型可以直接使用模型,无需复杂的对象关系映射。

(2)界面 screens 和 表单 forms :用于基于 web 的应用界面或者其他用户接口。界面转换 screen transitions : 用于配置页面到页面的流转以及设置页面 跳转时,业务处理过程的必要输入。

(3)服务 services : 远程调用的方式运行内部逻辑交互或者曝露外部的服务 。ECA(事件-条件-行为 event-condition-action)规则 : 用于类似实体、 服务操作以及 email 信息接收等系统级事件触发 。

2电子商城的设计

2.1 功能设计

图1 电子商城系统功能结构图

2.2数据库设计

为了实现电子商城系统的功能,主要设计了以下四张数据表:

(1)用户表:(账号,密码,用户昵称,性别,年龄,体重,照片,用户电话,地址,邮箱,身份证号);

(2)店家信息表:(店铺编号,店名,电话,地址,店主姓名,营业执照,介绍);

(3)物品表:(物品编号,类别,名称,物品缩略图,物品大图,特惠价格,市场价,物品编号,库存,颜色,尺码,物品简介)

(4)订单信息表:(订单编号,物品名称,物品数量,物品单价,订单类型,订单总价,付款方式,接收时间,接收地点,发货方式,发货方,收货方,物流信息,订单状态,收货电话,收货姓名,发货电话,发货姓名)

3功能实现

3.1开发环境

本系统的开发环境,需要一个编辑器或者开发环境支持XML,Groovy,HTML,CSS 和 JavaScript脚本FreeMarker,Java(可选的),这样才能使用moqui框架。

3.2 Web 浏览器请求

在系统中,web浏览器请求服务器的过程如下: 一个 web 浏览器请求经由 Servlet 容器会传递到框架 层面(默认实现是内嵌了 Winstone Servlet 容器,同样也 支持 Tomcat 以及其他的 Java Servlet 规范容器)。Servlet 容器通过 web.xml 文件按照标准的方式在服务器上找到 安装的 MoquiServlet,并查找到相应的请求路径。 MoquiServlet 很简单,仅仅设置了一个执行上下文,然后 渲染请求的界面。Web 应用的界面渲染源自于配置的“根”界面,然后希 望获取到的目标界面都通过子界面路径的方式向下查找。 除了目标界面路径,可能也同时会有一个转换名称用于跳 转到目标界面[2]。

3.3 UI界面实现

商城的UI界面可以采用传统的div+css的方式也可以采用现在的HTML5这个根据开发者的喜好来确定,为了使商城更加美观简洁快速,开发出来的UI界面更加受用户喜爱,采用HTML5这种方式。UI界面需要美观大方而且流畅性和抗压性要强大。

3.4供应商的产品定价

利用moqui实现的供应商产品定价的后台代码如下:

Gyspdj.Xml

chargeShipping="Y"!

returnable="Y"

productName="Demo Product One-One" description=""/>

priceTypeEnumId="PptCurrent"!

fromDate="2016-10-03 00:00:00"

minQuantity="1" price="9.00" !

priceUomId="USD"/>!

priceTypeEnumId="PptCurrent"!

fromDate="2010-02-03 00:00:00" minQuantity="100" price="8.00" ! priceUomId="USD"/>!

3.5系统安全设计

电商系统的安全性也是系统开发过程中需要考虑的核心因素之一。在moqui框架中,利用请求参数 map 使用 OWASP ESAPI 类库进行规范化转换以及过滤。它和服务门面校验一起有助于防止跨站脚本攻击(XSS)和注入攻击[3]。 moqui框架的安全性示意图如图3所示。

4系统测试

为了检测系统的易用性和性能,我们对系统进行模拟测试,测试环境如下:

(1)服务器环境

系统:windows sever2003

硬件:4G内存、双核处理器(1.6GHz,)、500G硬盘

(2)软件环境

IDEA,tomcat7.0,mysql

經过反复细致的系统测试,系统的功能使用正常,界面响应速度快,操作流畅,安全性能高,抗压能力强,达到了预期目标,可移植能力强,便于修改和二次开发。

5 结束语

我们采用moqui框架开发电商网站极大地节省了开发时间,提高了开发效率,而且逻辑结构明确不易混淆,给开发者一个清晰明了的开发结构,方便团队开发。经过系统测试,确认moqui框架确实对电商的开发起到了很好的作用,而且安全性和抗压性得到了很好的保证。从开发上降低了企业成本,加快企业对市场的响应速度,从而大大提高了企业的服务质量和竞争力[3]。

参考文献:

[1] 肖彦昌,陆慧娟,徐文龙.基于Rails框架的网上商城研究与实现[J].电子商务,2011(9):49-51.

[2] 李琳.基于Web浏览器的实时通信技术RTC Web[J].数字通信,2012(5):55-58.

猜你喜欢
互联网电商
电商助力“种得好”也“卖得火”
电商“链”起小镇青年
电商鄙视链中的拼多多
“互联网+”环境之下的著作权保护
“互联网+”对传统图书出版的影响和推动作用
从“数据新闻”看当前互联网新闻信息传播生态
互联网背景下大学生创新创业训练项目的实施
农药外企为啥不搞电商?
电商下乡潮