Webx是一个在阿里巴巴集团内部广泛使用的,层次化、模块化的一个Web框架。 Webx是基于经典MVC设计模式的WEB框架,推崇页面驱动和约定胜于配置的理念。 Webx是一个基于Spring的组件框架。组件是一个软件包,它可以被其它组件扩展,也可以扩展其它组件。利用这些特性,Webx不仅能够用来开发高度可定制的Web应用(这是它的主要功能),也能够用来帮助你开发高度可扩展的非WEB的应用

webx框架官方文档:http://openwebx.org/

webx框架的的层次

SpringExt:基于Spring,提供扩展组件的能力。它是整个框架的基础。

Webx Framework:基于Servlet API,提供基础的服务,例如:初始化Spring、初始化日志、接收请求、错误处理、开发模式等。Webx Framework只和servlet及spring相关 —— 它不关心Web框架中常见的一些服务,例如Action处理、表单处理、模板渲染等。因此,事实上,你可以用Webx Framework来创建多种风格的Web框架。

Webx Turbine:基于Webx Framework,实现具体的网页功能,例如:Action处理、表单处理、模板渲染等。

我们在使用webx框架的时候,可以使用整个框架,也可以只使用webx框架中的部分。
比如说可以只使用SpringExt。
仅使用SpringExt及Web组件,在此基础上运行Spring MVC、Struts等非webx框架。
仅使用Webx Framework,创造新的Web框架
使用整个Webx框架,定制Turbine

在应用启动的时候,会加载一个Spring容器到内存中,并且默认的在容器中添加一些用于服务的Service Bean,这些Service Bean会通常在整个生命周期中存在并提供各项服务。对于不同的层次,其Service会有各种不同的扩展,
比如在SpringExt层次中有用于加载资源的ResourceLoaderService
在Webx Framwork层次中扩展了用于控制整个应用流程的Pipeline Service
在Webx Turbine层次中又扩展了用于加载模块的ModuleLoaderService。
这些service都会有与其对应的Service Bean在Spring容器加载的时候被添加到Spring容器中,有时候这些Service Bean也会被注入到应用中具体的Bean中去,为其提供服务。

来源:www.hollischuang.com

webx学习(一)——初识webx相关推荐

  1. webx学习(三)——Webx Turbine

    Webx Turbine建立在Webx Framework的基础上,实现了页面渲染.布局.数据验证.数据提交等一系列工作. Webx Turbine所遵循下面的设计理念包括: 页面驱动 约定胜于配置 ...

  2. webx学习(二)——Webx Framework

    Webx Framework负责完成一系列基础性的任务 Webx Framework的任务 初始化Spring容器 初始化日志系统 增强request/response/session的功能 提供pi ...

  3. Nancy in .Net Core学习笔记 - 初识Nancy

    原文:Nancy in .Net Core学习笔记 - 初识Nancy 前言 去年11月份参加了青岛MVP线下活动,会上老MVP衣明志介绍了Nancy, 一直没有系统的学习一下,最近正好有空,就结合. ...

  4. Nacos学习之初识Nacos

    Nacos学习之初识Nacos 在分布式项目中既然存在Eureka这个注册中心,那么Nacos有充当什么角色?Nacos到底是个啥?他又是咋么下载安装的?本文我会将从什么是Nacos.Nacos与其他 ...

  5. PE病毒学习笔记——初识感染技术 (转自看雪学院)

    [分享]PE病毒学习笔记--初识感染技术 <script type="text/javascript"></script>   标 题: [分享]PE病毒学 ...

  6. 前端学习(初识HTML 上)——基础知识和基本标签

    前端学习之初识HTML 一.HTML基础知识 1.html定义 2.html特点 3.html标签 4.html基础结构 (1)<head></head>中的<meta& ...

  7. webx学习(四)——ResourceLoadingService

    ResourceLoadingService是一个可以从各种输入源中(例如从File System.Classpath.Webapp中)查找和读取资源文件的服务. 资源表现形式的多样性,给应用程序的接 ...

  8. webx3学习之旅——webx项目的创建(maven命令创建)

    更加详细的内容,请参考webx3官网:创建第一个Webx应用 一.选择一个路径,在这个路径下保存webx项目,我在这儿选择的是F盘根目录 二.在这个目录中直接输入cmd,回车 这样做的好处是可以直接在 ...

  9. python面向对象学习_Python 初识面向对象#学习猿地

    > 面向对象编程--Object Oriented Programming,简称`OOP`,是一种**以对象为中心**的程序设计思想. > > 面向过程编程--Procedure O ...

最新文章

  1. apache 限制IP访问
  2. 阿里云虚拟机mysql_打开虚拟机里mysql
  3. linux shell脚本 引入外部shell文件
  4. hdu 4035 可能性DP 成都网络游戏
  5. 【mysql优化专题】本专题终极总结(共12篇)
  6. java多线程优先级的方法_Java多线程以及线程优先级
  7. 计算机控制技术与自动化的关系,计算机控制技术东南大学自动化学院.ppt
  8. Linux排序命令sort笔记
  9. [JavaWeb-XML]XML组成部分
  10. 如何观察JS的事件队列的执行划分
  11. 2018年全国多校算法寒假训练营练习比赛(第四场)F:Call to your teacher
  12. 如何重命名Git标签?
  13. java 小球运动轨迹_java怎么实现小球的运动轨迹
  14. 修改Firebug字体
  15. 服务器支持raid2,服务器做RAID,如何选择RAID?
  16. MangoDB索引、排序和聚合
  17. python读取rtf文件_richtextbox怎样读取txt文件或rtf文件
  18. 592. 分数加减运算 : 表达式计算入门题
  19. jquery 立体走马灯_CSS3超酷3D文字跑马灯特效
  20. 曾几何时,还是游吟长安的醉客

热门文章

  1. php视频降清晰度,使用FFMPEG降低视频分辨率
  2. java 连等_java并发之LBQ和ABQ(1)
  3. 九、XML和Json的特点
  4. 闲心之谈之虚拟货币系列:1、KDJ图实用技巧
  5. 面试题17. 打印从1到最大的n位数
  6. Django上传文件,制作文件上传按钮,form上传文件
  7. 我的QT5学习之路(目录)
  8. iOS - - JSON 和 XML解析
  9. 【转】js日期时间函数
  10. JavaEE实战班第十一天