webx概念学习
来源:互联网 发布:svd算法原理 编辑:程序博客网 时间:2024/05/27 20:39
所有的开源框架都在互相学习,并趋于相似。
webx还缺少什么
- 目前webx只支持服务端的表单验证,而没有直接支持客户端的js验证。
- 目前webx没有直接支持ajax编程。
- 目前webx没有直接支持rest编程。
- 目前webx没有直接支持web flow。
- 仅使用springext,适用于非web应用、单元测试
import java.io.File;import org.springframework.core.io.FileSystemResource;import com.alibaba.citrus.springext.support.context.XmlApplicationContext; ...XmlApplicationContext parentContext = new XmlApplicationContext( new FileSystemResource(new File(srcdir, "parent.xml"))); XmlApplicationContext context = new XmlApplicationContext( new FileSystemResource(new File(srcdir, "app.xml")), parentContext); Object mybean = context.getBean("mybean");
- 仅使用springext及web组件,在此基础上运行spring mvc、structs等非webx框架
<?xml version="1.0" encoding="UTF-8"?><web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd "> <!-- 初始化日志系统,装载/WEB-INF/log4j.xml或/WEB-INF/logback.xml --> <listener> <listener-class>com.alibaba.citrus.logconfig.LogConfiguratorListener</listener-class> </listener> <!-- 初始化Spring容器,装载/WEB-INF/webx.xml, /WEB-INF/webx-*.xml --> <listener> <listener-class>com.alibaba.citrus.webx.context.WebxContextLoaderListener</listener-class> </listener> <!-- 下面配置:Spring MVC、Struts的filter、servlet、mapping... --> ……</web-app>
这里使用了webx的webcontextloaderListener来初始化spring容器,而不是用spring原生的contextloaderListener。
- 仅使用webx framework,创建新的web框架,
<webx-configuration xmlns="http://www.alibaba.com/schema/services"> <components defaultControllerClass="com.myframework.MyController"> <rootController class="com.myframework.MyRootController" /> </components></webx-configuration>
- 使用整个webx框架,定制turbine
webx是阿里巴巴开源定制可扩展的JavaEE框架,框架里有TemplateAction,TemplateScreen,AbstractModule,TemplateControl,页面使用velocity模板,持久层使用ibatis,Bean容器使用的是spring。
webx.xml:每个webx应用,都需要有一个webx.xml配置文件,这个文件定义了webx所用到的所有services的配置。
所有和前台展示有关的文件,即模板,都放在template目录下,vm后缀的velocity的模板。
Modules是基本模块,包括screen, control, action。
(1)screen用于处理页面显示的module,主要功能就是展示一个页面。
(2)control,和screen类似,但可以被screen或layout引用。
(3)action,处理用户请求的module。
webx执行流程:
如果在浏览器中输入http://localhost:8080/fuwuxian/login.htm
1.分析url的成分,取得target:/login.vm
(1)fuwuxian Context Path,服务器反映这个请求交给fuwuxian接管。
(2)login.htm Servlet Path,在web.xml中把*.xml映射到webx controller servlet,所以webx controller servlet接管这个请求。
(3)根据webx默认的映射,login.htm会被映射为login.vm
2.根据target查找screen模板,/screen/login.vm
假如target的值:/xxx/yyy/login.vm,那么:
(1)在/template/screen目录下,找到/xxx/yyy/login.vm模板。
(2)依次查找screen类:
xxx.yyy.Lgin(如果找不到,下一个)
xxx.yyy.Default(如果找不到,下一个)
xxx.Default(如果找不到,下一个)
Default(如果找不到,下一个)
TemplateScreent(系统l默认screen,不可能找不到)
3.执行screen类,并渲染screen模板
(1)如果存在Layout布局,渲染layout,执行screen类,并渲染screen模板。
(2)根据target查找layout模板,渲染在layout模板中引用的control。
- webx概念学习
- webx概念
- webx学习
- webx 学习
- Webx学习
- webx学习
- webx学习(二)——Webx Framework
- Webx学习笔记
- Webx学习笔记
- webx学习链接
- webx学习总结
- webx学习手册
- website/webx框架学习
- webx相关学习地址
- Webx学习(一)
- webx相关概念与具体处理流程
- webx相关概念与具体处理流程
- webX
- “埃尼阿克”背后的6个女孩
- wrap opencv c++ for python
- 该符号在函数 "public: __thiscall _bstr_t::_bstr_t(wchar_t const *)" (??0_bstr_t@@QAE@PB_W@Z) 中被引用
- java js cookie
- eclipse远程调试Tomcat方法
- webx概念学习
- Swift禁用UIWebView和WKWebView的下拉拖动效果
- 网站安全检测工具
- Android Studio 2.2 NDK开发环境搭建
- 论 java.net.SocketException: sendto failed: EPIPE (Broken pipe) 的解决办法
- 位运算符
- maven学习4-多模块项目
- 免费CDN汇总
- 前端项目中的切图方法