登录 注册
当前位置:主页 > 资源下载 > 50 > webx3框架指南PDF教程附学习Demo下载

webx3框架指南PDF教程附学习Demo下载

  • 更新:2024-05-22 22:03:08
  • 大小:47.3MB
  • 推荐:★★★★★
  • 来源:网友上传分享
  • 类别:Java - 后端
  • 格式:7Z

资源介绍

该文档为官方webx框架文档,对webx进行了全面的讲解,非常实用,并附学习的Demo 为什么要用Webx而不是其它的开源框架? 现在有很多Java的Web框架可供选择,并且它们也都是免费的。例如: • Struts • Webwork • Tapestry • Spring MVC 以上框架都是非常优秀的。说实话,如果阿里巴巴网站在2001年开始,就有这么多可选择的话,无论选择哪一个都不会有问题。因为这些年来,所有的开源Web框架都在互相学习、并趋于相似。Webx也不例外,它吸收了其它框架的很多想法。因此,当你使用Webx的时候,你会觉得在很多方面,它和其它开源的框架非常类似。我并不是说所有的框架都一样好,而是说只要假以时日,所有的框架在发展过程中,必然会积聚好的方面,淘汰坏的方面,从而变得足够好。从这个角度看,的确没有特别明显的理由来选择Webx,但也没有明显的理由不选择Webx。 另一方面,由于每一种框架采用不同的设计,必然会有各自的优势。Webx也是如此 —— 它在某些方面有一些独到的设计,超越了同类框架。Webx有哪些优势呢? Webx的优势 成熟可靠性 这个优势主要是针对阿里巴巴及属下网站而言。因为Webx在阿里巴巴和淘宝用了很多年。对于这种超大访问量的电子商务网站,Webx经受了考验,被证明是成熟可靠的。 开放和扩展性 • 对Spring的直接支持 —— Spring是当今主流的轻量级框架。Webx 3.0和Spring MVC一样, 完全建立在Spring框架之上,故可运用Spring的所有特性。 • 扩展性 —— Webx 3.0对Spring做了扩展,使Spring Bean不再是“bean”,而是升级成“组件”。一个组件可以扩展另一个组件,也可以被其它组件扩展。这种机制造就了Webx的非常好的扩展性,且比未经扩展的Spring更易使用。 • 开放性 —— Webx被设计成多个层次,层次间的分界线很清晰。每个层次都足够开放和易于扩展。你可以使用全部的Webx,也可以仅仅使用到Webx的任何一个层次。 引言 ............................................................................................................................... ix 1. 阅读向导 ............................................................................................................. ix 2. Webx是什么? .................................................................................................... ix 3. Webx的历史 ....................................................................................................... ix 4. 为什么要用Webx而不是其它的开源框架? ............................................................. x 5. Webx的优势 ........................................................................................................ x 5.1. 成熟可靠性 ................................................................................................ x 5.2. 开放和扩展性 ............................................................................................. x 6. Webx还缺少什么? .............................................................................................. x 部分 I. Webx框架概览 ..................................................................................................... 1 第 1 章 Webx总体介绍 ............................................................................................. 4 1.1. 设计理念 ................................................................................................... 4 1.1.1. 框架的本质 ..................................................................................... 4 1.1.2. 基础框架 ........................................................................................ 4 1.1.3. 层次化 ........................................................................................... 5 1.2. Webx的层次 ............................................................................................. 6 1.2.1. 三个大层次 ..................................................................................... 6 1.2.2. 剪裁和定制Webx ............................................................................ 7 1.3. 本章总结 ................................................................................................... 9 第 2 章 SpringExt ................................................................................................... 10 2.1. 用SpringExt装配服务 ............................................................................... 10 2.1.1. Spring Beans ............................................................................... 11 2.1.2. Spring Schema ........................................................................... 12 2.1.3. SpringExt Schema ....................................................................... 15 2.2. SpringExt原理 ......................................................................................... 16 2.2.1. XML Schema中的秘密 ................................................................. 16 2.2.2. 扩展点,Configuration Point ....................................................... 17 2.2.3. 捐献,Contribution ...................................................................... 17 2.2.4. 组件和包 ...................................................................................... 18 2.2.5. 取得Schemas .............................................................................. 19 2.3. SpringExt其它特性 ................................................................................... 22 2.4. 本章总结 ................................................................................................. 23 第 3 章 Webx Framework ...................................................................................... 24 3.1. Webx的初始化 ........................................................................................ 24 3.1.1. 初始化级联的Spring容器 ............................................................... 24 3.1.2. 初始化日志系统 ............................................................................ 26 3.2. Webx响应请求 ........................................................................................ 27 3.2.1. 增强request、response、session的功能 ....................................... 27 3.2.2. Pipeline流程机制 .......................................................................... 29 3.2.3. 异常处理机制 ................................................................................ 30 3.2.4. 开发模式工具 ................................................................................ 30 3.2.5. 响应和处理请求的更多细节 ............................................................ 33 3.3. 定制Webx Framework ............................................................................ 36 3.3.1. 定制WebxRootController ............................................................ 36 Webx框架指南 iv 3.3.2. 定制WebxController .................................................................... 36 3.4. 本章总结 ................................................................................................. 37 第 4 章 Webx Turbine ............................................................................................ 38 4.1. 设计理念 ................................................................................................. 38 4.1.1. 页面驱动 ...................................................................................... 38 4.1.2. 约定胜于配置 ................................................................................ 39 4.2. 页面布局 ................................................................................................. 40 4.3. 处理页面的基本流程 ................................................................................. 41 4.4. 依赖注入 ................................................................................................. 43 4.4.1. Spring原生注入手段 ...................................................................... 43 4.4.2. 注入request、response和session对象 ........................................... 43 4.4.3. 参数注入 ...................................................................................... 44 4.5. 定制Webx Turbine .................................................................................. 44 4.6. 本章总结 ................................................................................................. 45 部分 II. Webx基础设施服务 ............................................................................................ 46 第 5 章 Resource Loading服务指南 ....................................................................... 50 5.1. 资源概述 ................................................................................................. 50 5.1.1. 什么是资源? ................................................................................ 50 5.1.2. 如何表示资源? ............................................................................ 51 5.1.3. 如何访问资源? ............................................................................ 51 5.1.4. 如何遍历资源? ............................................................................ 52 5.1.5. 有什么问题? ................................................................................ 53 5.2. Spring的ResourceLoader机制 ................................................................. 54 5.2.1. Resource接口 .............................................................................. 54 5.2.2. ResourceLoader和ResourcePatternResolver接口 ...................... 54 5.2.3. 在代码中取得资源 ......................................................................... 55 5.2.4. Spring如何装载资源? ................................................................... 56 5.2.5. Spring ResourceLoader的缺点 ..................................................... 58 5.3. Resource Loading服务 ........................................................................... 59 5.3.1. 替换Spring ResourceLoader ......................................................... 59 5.3.2. 定义新资源 ................................................................................... 60 5.3.3. 重命名资源 ................................................................................... 61 5.3.4. 重定向资源 ................................................................................... 62 5.3.5. 匹配资源 ...................................................................................... 63 5.3.6. 在多个ResourceLoader中查找 ...................................................... 64 5.3.7. 装载parent容器中的资源 .............................................................. 65 5.3.8. 修改资源文件的内容 ...................................................................... 65 5.3.9. 直接使用ResourceLoadingService .............................................. 66 5.3.10. 在非Web环境中使用Resource Loading服务 ............................... 68 5.4. ResourceLoader参考 ............................................................................. 69 5.4.1. FileResourceLoader ................................................................... 69 5.4.2. WebappResourceLoader ............................................................... 70 5.4.3. ClasspathResourceLoader .......................................................... 70 5.4.4. SuperResourceLoader ................................................................. 70 Webx框架指南 v 5.4.5. 关于ResourceLoader的其它考虑 ................................................... 71 5.5. 本章总结 ................................................................................................. 71 第 6 章 Filter、Request Contexts和Pipeline ........................................................... 72 6.1. Filter ....................................................................................................... 72 6.1.1. Filter的用途 .................................................................................. 72 6.1.2. Filter工作原理 ............................................................................... 73 6.1.3. Filter的限制 .................................................................................. 74 6.1.4. Webx对filter功能的补充 ................................................................ 74 6.2. Request Contexts服务 ........................................................................... 75 6.2.1. Request Contexts工作原理 .......................................................... 75 6.2.2. Request Contexts的用途 ............................................................. 76 6.2.3. Request Contexts的使用 ............................................................. 77 6.3. Pipeline服务 ........................................................................................... 80 6.3.1. Pipeline工作原理 .......................................................................... 80 6.3.2. Pipeline的用途 ............................................................................. 81 6.3.3. Pipeline的使用 ............................................................................. 83 6.4. 本章总结 ................................................................................................. 92 第 7 章 Request Contexts功能指南 ........................................................................ 94 7.1.  - 提供基础特性 .......................................................................... 95 7.1.1. 拦截器接口 ................................................................................... 95 7.1.2. 默认拦截器 ................................................................................... 96 7.2.  -设置locale区域和charset字符集编码 ............................... 96 7.2.1. Locale基础 .................................................................................. 96 7.2.2. Charset编码基础 .......................................................................... 97 7.2.3. Locale和charset的关系 ............................................................... 98 7.2.4. 设置locale和charset .................................................................... 98 7.2.5. 使用方法 ...................................................................................... 99 7.3.  - 解析参数 ............................................................................. 102 7.3.1. 基本使用方法 .............................................................................. 102 7.3.2. 上传文件 .................................................................................... 103 7.3.3. 高级选项 .................................................................................... 105 7.4.  - 缓存response中的内容 ..................................................... 108 7.4.1. 实现原理 .................................................................................... 108 7.4.2. 使用方法 .................................................................................... 110 7.5.  - 延迟提交response ...................................................... 112 7.5.1. 什么是提交 ................................................................................. 112 7.5.2. 实现原理 .................................................................................... 112 7.5.3. 使用方法 .................................................................................... 113 7.6.  -重写请求的URL和参数 .......................................................... 113 7.6.1. 概述 ........................................................................................... 113 7.6.2. 取得路径 .................................................................................... 115 7.6.3. 匹配rules .................................................................................... 115 7.6.4. 匹配conditions ........................................................................... 116 7.6.5. 替换路径 .................................................................................... 118 7.6.6. 替换参数 .................................................................................... 118 Webx框架指南 vi 7.6.7. 后续操作 .................................................................................... 119 7.6.8. 重定向 ........................................................................................ 120 7.6.9. 自定义处理器 .............................................................................. 121 7.7. 本章总结 ............................................................................................... 121 第 8 章 Request Context之Session指南 ................................................................ 122 8.1. Session概述 ........................................................................................... 122 8.1.1. 什么是Session ............................................................................. 122 8.1.2. Session数据存在哪? ................................................................... 122 8.1.3. 创建通用的session框架 ................................................................ 124 8.2. Session框架 ........................................................................................... 125 8.2.1. 最简配置 .................................................................................... 125 8.2.2. Session ID .................................................................................. 125 8.2.3. Session的生命期 ......................................................................... 126 8.2.4. Session Store ............................................................................. 128 8.2.5. Session Model ........................................................................... 130 8.2.6. Session Interceptor .................................................................... 130 8.3. Cookie Store ........................................................................................ 131 8.3.1. 多值Cookie Store ...................................................................... 132 8.3.2. 单值Cookie Store ...................................................................... 135 8.4. 其它Session Store ................................................................................. 138 8.4.1. Simple Memory Store ................................................................ 138 8.5. 本章总结 ............................................................................................... 139 部分 III. Webx应用支持服务 .......................................................................................... 140 第 9 章 表单验证服务指南 ..................................................................................... 142 9.1. 表单概述 ............................................................................................... 142 9.1.1. 什么是表单验证 ........................................................................... 142 9.1.2. 表单验证的形式 ........................................................................... 143 9.2. 设计 ...................................................................................................... 145 9.2.1. 验证逻辑与表现逻辑分离 ............................................................. 145 9.2.2. 验证逻辑和应用代码分离 ............................................................. 146 9.2.3. 表单验证的流程 ........................................................................... 146 9.3. 使用表单验证服务 .................................................................................. 147 9.3.1. 创建新数据 ................................................................................. 147 9.3.2. 修改老数据 ................................................................................. 154 9.3.3. 批量创建或修改数据 .................................................................... 156 9.4. 表单验证服务详解 .................................................................................. 160 9.4.1. 配置详解 .................................................................................... 160 9.4.2. Validators .................................................................................. 168 9.4.3. Form Tool .................................................................................. 178 9.4.4. Field keys的格式 ........................................................................ 180 9.4.5. 外部验证 .................................................................................... 181 9.5. 本章总结 ............................................................................................... 182 部分 IV. Webx应用实作 ............................................................................................... 183 第 10 章 创建第一个Webx应用 .............................................................................. 185 Webx框架指南 vii 10.1. 准备工作 ............................................................................................. 185 10.1.1. 安装JDK ................................................................................... 185 10.1.2. 安装和配置maven .................................................................... 185 10.1.3. 安装集成开发环境 ..................................................................... 185 10.2. 创建应用 ............................................................................................. 186 10.3. 运行应用 ............................................................................................. 186 10.4. 提问和解答 .......................................................................................... 188 10.4.1. 在生产环境的应用上,也会出现前述的“开发者首页”吗? .......... 188 10.4.2. “开发模式”是什么意思? ........................................................ 189 10.4.3. 所生成的应用中包含了什么? ..................................................... 190 第 11 章 Webx日志系统的配置 .............................................................................. 191 11.1. 名词解释 ............................................................................................. 191 11.1.1. 日志系统(Logging System) ................................................... 191 11.1.2. 日志框架(Logging Framework) ............................................ 192 11.2. 在Maven中组装日志系统 ..................................................................... 192 11.2.1. 在Maven中配置logback作为日志系统 ...................................... 194 11.2.2. 在Maven中配置log4j作为日志系统 ............................................ 197 11.3. 在WEB应用中配置日志系统 ................................................................... 200 11.3.1. 设置WEB应用 ............................................................................ 200 11.3.2. 定制/WEB-INF/logback.xml(或/WEB-INF/log4j.xml) .......... 202 11.3.3. 同时初始化多个日志系统 ............................................................ 205 11.4. 常见错误及解决 ................................................................................... 207 11.4.1. 查错技巧 ................................................................................... 207 11.4.2. 异常信息:No log system exists ................................................ 207 11.4.3. 异常信息:NoSuchMethodError: org.slf4j.MDC.getCopyOfContextMap() ........................................... 208 11.4.4. STDERR输出:Class path contains multiple SLF4J bindings ....... 208 11.4.5. 看不到日志输出 ......................................................................... 208 11.5. 本章总结 ............................................................................................. 210 部分 V. 辅助工具 ......................................................................................................... 211 第 12 章 安装和使用SpringExt插件 ......................................................................... 213 12.1. SpringExt插件有什么用? ..................................................................... 213 12.2. Maven插件 ......................................................................................... 214 12.2.1. 在pom.xml中定义插件 ............................................................... 215 12.2.2. 启动schema服务器 .................................................................. 215 12.2.3. 导出所有的schemas ................................................................. 217 12.2.4. Maven插件的可选参数 ............................................................. 217 12.3. Eclipse插件 ......................................................................................... 218 12.3.1. 安装插件 ................................................................................... 218 12.3.2. 利用插件编辑Webx/SpringExt配置文件 ...................................... 223 12.3.3. 利用插件编辑SpringExt组件 ....................................................... 228 12.4. 本章总结 ............................................................................................. 230 第 13 章 AutoConfig工具使用指南 ........................................................................ 231 13.1. 需求分析 ............................................................................................. 231 13.1.1. 解决方案 ................................................................................... 231 Webx框架指南 viii 13.2. AutoConfig的设计 .............................................................................. 234 13.2.1. 角色与职责 ............................................................................... 234 13.2.2. 分享二进制目标文件 .................................................................. 235 13.2.3. 布署二进制目标文件 .................................................................. 235 13.2.4. AutoConfig特性列表 ................................................................ 236 13.3. AutoConfig的使用 —— 开发者指南 ..................................................... 237 13.3.1. 建立AutoConfig目录结构 .......................................................... 237 13.3.2. 建立auto-config.xml描述文件 ................................................... 238 13.3.3. 建立模板文件 ............................................................................ 241 13.4. AutoConfig的使用 —— 布署者指南 ..................................................... 243 13.4.1. 在命令行中使用AutoConfig ...................................................... 243 13.4.2. 在maven中使用AutoConfig ..................................................... 244 13.4.3. 运行并观察AutoConfig的结果 ................................................... 246 13.4.4. 共享properties文件 ................................................................... 247 13.4.5. AutoConfig常用命令 ................................................................ 249 13.5. 本章总结 ............................................................................................. 251 第 14 章 AutoExpand工具使用指南 ...................................................................... 252 14.1. AutoExpand工具简介 ......................................................................... 252 14.1.1. Java、JavaEE打包的格式 ......................................................... 252 14.1.2. 应用布署的方式 ......................................................................... 253 14.1.3. AutoExpand的用武之地 ........................................................... 253 14.2. AutoExpand的使用 ............................................................................. 254 14.2.1. 取得AutoExpand ..................................................................... 254 14.2.2. 执行AutoExpand ..................................................................... 254 14.2.3. AutoExpand和AutoConfig的合作 ............................................ 255 14.3. AutoExpand的参数 ............................................................................. 256 14.4. 本章总结 ............................................................................................. 257