最近项目开发,打算使用Ext作为表现层,不想让开发人员花太多的时间去书写枯燥无味的jsp标签,故打算采用Ext作为表现层的解决方案,控制层,我采用了Struts2来替代。本人对Ext的各个组件不是很熟悉,也就是最近2天看了相关的demo和Javaeye上的帖子,特整理了一个可执行的工程出来。很简单,主要是为了阐述如何实现二者的通信机制而已。如果有时间,再慢慢完善。
其中有几个点需要说明一下:
1、采用JavaEye一位网友的建议,采用JsLoader来加载相关的资源,但这里,需要注意文件资源的路径问题,否则将出现Ext未定义等错误。我该写了JsLoader的方法,增加了getContextPath()方法到那个stripExternalRef()返回之前。
/**
* get the application's context path
* @return {}
*/
this.getContextPath=function() {
var contextPath = document.location.pathname;
var index =contextPath.substr(1).indexOf("/");
contextPath = contextPath.substr(0,index+1);
delete index;
return contextPath;
}
// 在stripExternalRef返回前,强加这个上下文路径
/**
* Strips out any double slashes, double dots, or cross domain references.
* @param s string
*/
this.stripExternalRef=function(s){
var exprs = [/\.\.+/g,/\/\/+/g,/\\\\+/g,/\:+/g,/\'+/g,/\%+/g];
// If it's hosted, we relax the protocol related regex
exprs = [/\.\.+/g,/\\\\+/g,/\'+/g,/\%+/g];
if (_remote)
for(var i=0; i<exprs.length; i++)
{
s = s.replace(exprs[i], '');
}
return this.getContextPath()+ s;
}
以上方法,也是google上翻了好久才拿到的,习惯了google的拿来主义。
2、注意GridPanel中关于root属性,他这个属性的意思就是说,你必须指明你的Json返回的串中,网格数据对应的key,在这里我们的网格数据对应的对象是
List<Person> persons;
所以就是
reader: new Ext.data.JsonReader({
totalProperty: 'total',
root: 'persons',
successProperty :'success'
}, [
{name: 'id',mapping:'id',type:'int'},
{name: 'sex',mapping:'sex',type:'string'},
{name: 'name',mapping:'name',type:'string'},
{name: 'descn',mapping:'descn',type:'string'}
])
了,我们可以使用JsonPlugin的注释来更改json串的相关key值。
呵呵,第一次发贴,明天请假,今天熬夜把这个问题解决,明天给公司的兄弟一个交代。哈
好了,改天对ext有更多的认识,也慢慢发上来,太晚了,儿子都睡啦。睡觉去咯。
分享到:
相关推荐
ext+jsp分页---好不好,大家说了算。下载不扣分,回帖加1分,欢迎下载,童叟无欺。ext+jsp分页---好不好,大家说了算。下载不扣分,回帖加1分,欢迎下载,童叟无欺。ext+jsp分页---好不好,大家说了算。下载不扣分,...
ext+struts2整合实现登陆,源码加注释。
Ext+struts+ibatis 完整项目 项目虽小五脏俱全
ext+struts2 是实现文件上传。源码,很好的列子,请大家放心下载。
Struts2+Ext登录整合完整版 Struts2+Ext登录整合完整版 Struts2+Ext登录整合完整版 Struts2+Ext登录整合完整版 Struts2+Ext登录整合完整版 Struts2+Ext登录整合完整版 Struts2+Ext登录整合完整版 Struts2+Ext登录...
ext+struts+spring图书管理的小例子 欢迎下载
Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-...
Ext+Struts2的学生成绩管理系统,希望对Ext学习者有帮助。
用EXT+struts2+spring+hibernate做的一个增删改查实例,主要用到了EXTjs里面的部分组件,用JSON与服务端交互,实现一个增删改查的功能!本地MYsql数据库,sql文件在根目录下面,建好库既可以运行!当然,还是需要在...
ext+struts2的集成实例.............
ext+struts2+json登陆方法.pdf
ext+struts2+json登陆方法借鉴.pdf
ext+struts1.2图书管理系统让你了解ext框架以及与struts1.2的整合
一个Ext3 + struts2 + mysql的程序,主要功能是做了一个员工考勤系统,程序采用ext + action + dao的分层结构。代码大概有3000行,功能包括基本的增删改查、头像上传、分页、拦截器等功能,还用ext做了部分前台,有...
Ext+struts Ext学生管理系统 Ext与后台交互 Ext与数据库交互《深入浅出》中的最后一个例子
EXT + DWR + Struts + Hibernate + Spring Demo
系统登录 用户管理 角色管理 模块管理 字典管理 查询管理 系统重置 (关于数据库的部分在 http://download.csdn.net/source/756259 下载 )
NULL 博文链接:https://maskainv.iteye.com/blog/399508
利用ext3+struts2+hibernate+spring的CRUD+分页这四个框架实现crud,详细说明grid的用法,