Broadleaf Commerce 是一个开源的 Java 电子商务平台,基于 Spring 框架开发。提供一个可靠、可扩展的架构,可进行深度的定制和高速开发。

Broadleaf Commerce源码托管在GitHub上。眼下已经发展到4.x版本号。

这里是官方的demo,能够一睹为快

http://demo.broadleafcommerce.org/

关键方面和配置
特性
1、Catalog (文件夹分类)
提供灵活的产品和类型管理。一个重要的特性是能够继承产品分类来满足特殊的商业需求。管理界面能够管理各种类别和产品。

2、Promotion System(促销系统)
可通过配置的方式管理促销。下面类促销是无需客制化,通过管理界面就能够管理:
百分比折扣如7折、金额折扣如满100减10、固定价格如原价100现价90(Percent Off / Dollar Off / Fixed Price) 
订单、订单项、快递级别促销
买一赠一促销
基于客户、购物车或类别属性的促销

3、Content Management System(内容管理系统)
内容管理系统有下面特性:
支持终端用户管理静态页面
能够配置自己定义的内容类型(如广告)
提供UI界面管理静态页面、结构化内容、图片以及其它内容;
结构化内容可以针对性的对某些客户显示(如对满足一定条件的客户显示广告)


架构
1 Spring Framework
Spring提供诸多功能,包含依赖注入和事务管理

2 Security
Spring Security提供强健的安全认证框架,控制代码和页面级别的认证和授权。

3 Persistence
使用JPA和hibernate实现ORM基础

4 Asynchronous Messaging
使用spring JMS和一个现代的JMS代理交互来实现应用消息的异步处理。

5 Search
通过整合流行的Compass(对象/搜索引擎映射OSEM)和lucene项目提供可灵活的领域对象查找功能。

6 Task Scheduling
使用Quartz提供排程功能。

7 Email
Email功能分为同步和异步(jms)两种模式。Email内容能够通过velocity模板客制化。支持mail打开和连接点击跟踪。

8 Modular Design(模块化设计)
提供各种模块。能够和电子商务的一些重要功能进行交互。如信用卡处理、税收服务、快递公司。
比方。USPS快递模块是一个好的案例。 客户模块能够非常方便的开发并整合进来。


9 Configurable Workflows(可配置的工作流)
电子商务生命周期的关键表如今可配置的工作流。系统可以对这些关键的地方进行全然的控制。包含价格和结账,同意对订单、行为和客户运行模块进行操作。

支持包含复杂、嵌套行为的合成工作流。


10 Extensible Design(可扩展性设计)
扩展性是我们设计的核心。差点儿broadleaf全部的组件都是能够重写、或加入、或者通过改动增强和改变默认的行为。 这些组件包含全部的service、DAO、实体。

11 Configuration Merging(配置合并)
针对扩展模块。broadleaf还提供对spring配置文件进行合并的功能。它能够最小化配置。实现的人必须意识到。让用户把精力放在他们自己的配置细节。 Broadleaf在执行时会智能的将实现者的配置信息和broadleaf自己的配置信息进行合并。


12 Runtime Configuration Management(执行时配置管理)
services、模块和其它子系统的配置属性能够通过JMX暴露,这样管理者不用关闭系统就能够改变应用行为。


13 Presentation Layer Support(表现层支持)
提供非常多事先写好的spring MVC控制器来加快表现层的开发。

14 QoS(服务质量)
提供对自己定义和默认模块的服务质量监控,同一时候支持外部日志和email。

通过open API能够加入自己定义的Qos处理器。


15 PCI Considerations(PCI注意事项)
我们的架构和设计经过了细致的分析,帮助你在决定存储和使用敏感的客户金融账号信息的时候实现PCI遵从性。支付账号信息是分别引用的,同意你将机密的数据隔离存储到一个独立的安全的数据库平台。

另外,还同意使用不论什么符合标准的加密方案(broadleaf已经定义了API,帮助接入加密方案)。另外。提供具体的日志跟踪交易交互信息。


PCI(Payment Card Industry)(Payment Card Industry (PCI) Data Security Standard).支付卡行业 (PCI) 数据安全标准 (DSS)是一组全面的要求,旨在确保持卡人的信用卡和借记卡信息保持安全,而无论这些信息是在何处以何种方法收集、处理、传输和存储。


PCI DSS 由 PCI 安全标准委员会的创始成员(包含 American Express、Discover Financial Services、JCB、MasterCard Worldwide 和 Visa International)制定。旨在鼓舞国际上採用一致的数据安全措施。

PCI DSS 中的要求是针对在日常运营期间须要处理持卡人数据的公司和机构提出的。详细而言。PCI DSS 对在整个营业日中处理持卡人数据的金融机构、贸易商和服务提供商提出了要求。PCI DSS 包含有关安全管理、策略、过程、网络体系结构、软件设计的要求的列表,以及用来保护持卡人数据的其它措施。

16 Customizable Administration Platform (客制化管理平台)
管理应用基于我们新的开放的管理平台(平台使用标准的面向对象的技术提供一个清晰的客制化方式)。

管理平台和核心框架一样,都有非常好扩展性。表现层是基于著名的可信赖的GWT和SmartGWT技术。

Broadleaf电商系统开发(一) - Broadleaf介绍的更多相关文章

  1. B2B电商系统开发建设的价格费用取决于哪些要素

    B2B电子商务系统平台建设开发怎么做?如何搭建一个电商系统网站平台?相信我们的企业商家在搭建电子商务系统的时候都会进行前期的系统策划,但是对于电子商务系统的构建绝大多数人都有一个误区,那就是对于电子商 ...

  2. High购电商系统开发注意点

    1.引入第三方框架AFnetworking时,记得在xcode项目添加安全属性(自认为). 2.异步加载数据时,如果用数组来装模型,记得对数组进行初始化.对控件的赋值一般在获取数据之后.如果用到Tab ...

  3. 电商系统Broadleaf文档翻译(六) - 主要实体main entities

    主要实体 原文标题:main entities 原文出处:http://www.broadleafcommerce.com/docs/core/current/broadleaf-concepts/d ...

  4. 通过Dapr实现一个简单的基于.net的微服务电商系统(十四)——开发环境容器调试小技巧

    之前有很多同学提到如何做容器调试,特别是k8s环境下的容器调试,今天就讲讲我是如何调试的.大家都知道在vs自带的创建项目模板里勾选docker即可通过F5启动docker容器调试.但是对于启动在k8s ...

  5. (1)dotnet开源电商系统-brnshop&brnMall 和老外开发的nopCommerce(dotnet两套电商来PK--第一篇)

    一直想做电商软件,但是实在不想学PHP了,所以前后关注了这两个开源电商系统.一个是国人出品的,一个据说是俄罗斯人写得(不知道对不对).目前两个开源软件都在学习了解中,以下的博文可能会涉及到这两套系统, ...

  6. 集DDD,TDD,SOLID,MVVM,DI,EF,Angularjs等于一身的.NET(C#)开源可扩展电商系统–Virto Commerce

    今天一大早来看到园友分享的福利<分享一个前后端分离方案源码-前端angularjs+requirejs+dhtmlx 后端asp.net webapi>,我也来分享一个吧.以下内容由笔者写 ...

  7. MVC 6 电商网站开发实战

    [原创] ASP.NET 5系列教程 (六): 在 MVC6 中创建 Web API 标签: Web API MVC6 创建web API | 博主:powertoolsteam     ASP.NE ...

  8. 基于SpringBoot+MyBatis实现一套电商系统

    项目介绍 mall项目是一套电商系统,包括前台商城系统及后台管理系统,基于SpringBoot+MyBatis实现. 前台商城系统包含首页门户.商品推荐.商品搜索.商品展示.购物车.订单流程.会员中心 ...

  9. 电商系统的演变可以看出架构演变 Dubbo入门 远程过程调用 需要解决的问题

    Dubbo入门---搭建一个最简单的Demo框架 - CSDN博客 https://blog.csdn.net/noaman_wgs/article/details/70214612 Dubbo背景和 ...

随机推荐

  1. size_type类型

    由string类类型和vector类类型定义的类型,用以保存任意string对象或vector对象的长度,标准库类型将size_type定义为unsigned类型 string::size_type它 ...

  2. Spark脚本调用

    Spark提供了多个脚本来作为程序的入口,其中最常用的是交互脚本 spark-shell, pyspark,还有spark sql的客户端spark-sql. 这些脚本最后都会归结到对SparkSub ...

  3. FFT&NTT学习笔记

    具体原理就不讲了qwq,毕竟证明我也不太懂 FFT(快速傅立叶变换)&NTT(快速数论变换) FFT //求多项式乘积 //要求多项式A和多项式B的积多项式C //具体操作就是 //DFT(A ...

  4. 【codeforces 429D】Tricky Function

    [题目链接]:http://codeforces.com/problemset/problem/429/D [题意] 给你n个数字; 让你求出一段区间[l,r] 使得 (r−l)2+(∑rl+1a[i ...

  5. android中的AlertDialog具体概述

    android的AlertDialog具体解释 AlertDialog的构造方法所有是Protected的.所以不能直接通过new一个AlertDialog来创建出一个AlertDialog. 要创建 ...

  6. EBS OAF开发中怎样通过ReferenceAO进行验证

    EBS OAF开发中怎样通过ReferenceAO进行验证 (版权声明.本人原创或者翻译的文章如需转载,如转载用于个人学习,请注明出处:否则请与本人联系,违者必究) Reference AO 除了用于 ...

  7. WET Dilutes Performance Bottlenecks

    WET Dilutes Performance Bottlenecks Kirk Pepperdine THE IMPORTANCE OF THE DRY PRINCIPLE (Don't Repea ...

  8. numeric and int in sql server

    类型映射 https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/sql-server-data-type-mappings C#关 ...

  9. Linux下离线安装MySQL

    Linux下安装mysql 1 检查并卸载已安装mysql 命令:rpm -qa|grep -i mysql 命令:rpm -e --nodeps ‘上个命令后显示的本机已安装mysql依赖’ 如果存 ...

  10. 34.angularJS的{{}}和ng-bind

    转自:https://www.cnblogs.com/best/tag/Angular/ 1. <html> <head> <meta charset="utf ...