我的WebX框架学习总结与心得分享
最近学习了webx框架, 利用博客园跟大家分享一下自己的学习心得;
周建旭 2014-08-21
网上关于webx的资料少的可怜, 怎么办? 这种情况下不用去求助别人求人只会耽误时间, 不用畏惧; 看文档写demo 就ok了;
API是最好的资料, webx官方有个pdf的中文文档提供下载, 建议在学webx之前, 先整体浏览一遍文档以便于把握webx框架的大体脉络, 第一遍看的过程不必钻牛角尖 ;
然后结合淘宝官方Michael Zhou的Petstore(宠物商店)例子对比一下文档(那块不清楚就看pdf文件); 先尝试着在例子基础上写个简单查询增删改, 然后在一步步深入即可;
maven环境搭建这里不提, 主要说一下webx的约定胜于配置; 什么是约定胜于配置呢? 不能停留在概念表面就像很多人说spring的aop都不知道体现在哪些地方, spring的强大之处自然就感觉不到;
先说下webx的request请求基本流程:
request请求-->>piepline解析target参数-->>表单验证-->>screen类或action类
每个模块都有对应的control, layout, screen这种结构和目录; layout是一个页面的布局即显示screen和control的内容, 一个页面只可以有且最多一个screen但可以有多个control;一个 screen中可以包含多个control;
java每个模块的包结构也要与页面的control, screen对应;特殊的如表单提交还需要action包用来处理表单提交的数据;如果请求找的是screen那么先到layout包下找与screen名称对应的layout如果没有就默认寻找default(例如找screen下的index.vm找到后就会去layout下找index.vm没有就找default.vm), 还有一点要注意如果screen页面要处理数据那么src下的模块对应的screen包中就要有与盛放screen资源页面名称对应的screen类(例如:index.vm找的就去找Index.java来处理数据返回数据可以通过context.put方法);control也是如此, 如果没有数据需要进行处理可以src下的模块的control包可以不要;
最后一种特殊的情况是没有screen页面直接请求src包下screen包下的类(相当于ajax)这种情况时请求路径不需要通过screen页面去找同名的screen类, 直接找screen类时需要在路径结尾加.json或.do
control通常用来定义通用的部件比如导航菜单, tab切换等; 通常使用execute方法
screen可以用来显示页面的主要内容, 比如查询出所有数据页面显示等, 如常用的表单, 表格等常规操作都可以定义到screen中; 通常使用execute方法
任何提交表单这个动作都要走action包下的类
action 可以用来处理表单提交的数据, 方法名为表单按钮的名称(比如:ame="event_submit_do_add_user" 就需要在action包下的类中有个doAddUser的方法, 其它方法以此类推 )
我的WebX框架学习总结与心得分享的更多相关文章
- WebX框架学习笔记之一
Webx是什么? Webx是一套基于Java Servlet API的通用Web框架.它在Alibaba集团内部被广泛使用.从2010年底,向社会开放源码. Webx的发展历史 2001年,阿里巴巴内 ...
- WebX框架学习笔记之二----框架搭建及请求的发起和处理
框架搭建 执行环境:windows.maven 执行步骤: 1.新建一个目录,例如:D:\workspace.注意在盘符目录下是无法执行成功的. 2.执行如下命令: mvn archetype:gen ...
- 总结一下这几天学习django的心得
总结一下这几天学习django的心得 http://www.tuicool.com/articles/jMVB3e 时间 2014-01-12 11:40:11 CSDN博客 原文 http:// ...
- Web前端框架学习成本比较及学习方法
就项目中自己用过的前端框架的学习成本比较与学习心得分享 刚工作时间不长只用过这几个框架下面是难易程度比较: 不论哪个web前端框架, 究其本质都是把页面的数据传递给后台服务器语言(如java)进行处理 ...
- JavaSE中线程与并行API框架学习笔记1——线程是什么?
前言:虽然工作了三年,但是几乎没有使用到多线程之类的内容.这其实是工作与学习的矛盾.我们在公司上班,很多时候都只是在处理业务代码,很少接触底层技术. 可是你不可能一辈子都写业务代码,而且跳槽之后新单位 ...
- IdentityServer4 ASP.NET Core的OpenID Connect OAuth 2.0框架学习保护API
IdentityServer4 ASP.NET Core的OpenID Connect OAuth 2.0框架学习之保护API. 使用IdentityServer4 来实现使用客户端凭据保护ASP.N ...
- Hadoop学习笔记—18.Sqoop框架学习
一.Sqoop基础:连接关系型数据库与Hadoop的桥梁 1.1 Sqoop的基本概念 Hadoop正成为企业用于大数据分析的最热门选择,但想将你的数据移植过去并不容易.Apache Sqoop正在加 ...
- Spring框架学习一
Spring框架学习,转自http://blog.csdn.net/lishuangzhe7047/article/details/20740209 Spring框架学习(一) 1.什么是Spring ...
- 深入webx框架(li)
目录 1.Webx简介 2.创建webx应用 一.Webx简介 Webx本质上就是一个Web框架,它建立在Java Servlet API基础之上.上图所示是webx的架构图.webx本身类似于s ...
随机推荐
- ClassLoader类加载器
总的来说,当动态加载一个资源时,至少有三种类加载器可供选择: 系统类加载器(也被称为应用类加载器)(system classloader) 当前类加载器(current classloader) 当前 ...
- hdu 4607 树的直径
思路:利用dfs遍历整棵树,找出最长子树与次长子树,两者的和最大就是直径. 若k值小于直径就输出k-1,否则输出(k-d-1)*2+d; #include<iostream> #inclu ...
- mysql数据库千万级别数据的查询优化和分页测试
原文地址:原创 mysql数据库千万级别数据的查询优化和分页测试作者:于堡舰 本文为本人最近利用几个小时才分析总结出的原创文章,希望大家转载,但是要注明出处 http://blog.sina.com. ...
- Microsoft.SharePoint.Security的问题
请求“Microsoft.SharePoint.Security.SharePointPermission, Microsoft.SharePoint.Security, Version=12.0.0 ...
- kafka集群安装与配置
一.集群安装 1. Kafka下载: 可以从kafka官方网站(http://kafka.apache.org)上找到下载地址,再wgetwget http://mirrors.cnnic.cn/ap ...
- 第一个Apple Watch小例子
原文在这, 不过他说的add target按照他的说法还真没找到(估计是我的眼瞎了或者是版本不一样),还有就是好记性不如烂博客,先自己能看懂就行了. 请用Single View Application ...
- 老老实实学习WCF[第二篇] 配置wcf
老老实实学WCF 第二篇 配置WCF 在上一篇中,我们在一个控制台应用程序中编写了一个简单的WCF服务并承载了它.先回顾一下服务端的代码: using System; using System.Col ...
- 【leetcode】12. Integer to Roman
题目描述: Given an integer, convert it to a roman numeral. Input is guaranteed to be within the range fr ...
- String的几种初始化方法的区别
参考了: java中String的两种初始化方法 String a; String aa = ""; String aaa = "123"; String ...
- Linux C 程序 获取目录信息(16)
4.获取当前目录getcwd 会将当前工作目录绝对路径复制到参数buf所指的内存空间5.设置工作目录chdir6.获取目录信息opendir打开一个目录readdir读取目录中的内容 读取目录项信息 ...