之前曾经使用过3.x版本的extjs,当时可以结合struts实现各种基本的增删查改。但是4.1版本中增加了一些属性,出现了一些新的使用方法,导致错误不断,有的时候调用到相应的action却返回不了值,有的时候连action也调用不到。这里特别记录下自己解决问题的过程。
新版本的extjs中加入了model的概念,之前没有接触过。这里我理解为类的概念。extjs将json中的各条记录封装成一个类,这个类就可以理解为model。当然类中还是可以包含其他类的。(这样说感觉很奇怪,也可以将json理解为记录集,大的记录又可以包含小的记录。记录就是model的概念)
继而在定义store的时候要指出使用的model。store中的一个新概念是proxy,(记得之前的url是可以直接写在store中的,不过很久没接触了,这点并不是很确定)。proxy可以理解为store生成的方法,后续对store的增、删、查、改貌似也与这个地方有关。将proxy的type定义为ajax,然后在url中指明生成json数据的action即好。store的大致结构如下:
var store = Ext.create('Ext.data.Store',{
 storeId:'store',//后面再调用store的时候可能用到
 autoLoad:true,//自动加载,页面打开后不需要调用store.load()
 proxy:{
  type:'ajax',
  url:'xxx.action',
  reader:{
   type:'json'//返回数据类型
   root:'xxxx'
 }
});

  接下来关键部分是action的实现,我的后台采用的是Java平台。配置了struts2.3。
  struts可以直接返回json形式的结果,这里注意为了完成相关的功能,比如struts配置文件中extend的类要为json-defaults而非struts-defaults则需要导入相关的包。除了struts所需的基本包以外,我还导入了struts2-json-plugin-2.3.8.jar,ognl-3.0.6.jar,ezmorph-1.0.6.jar,json-lib-2.3-jdk15.jar等包。这里struts配置的时候将result的type设置为json即可。
  java类在写的时候千万注意,不再需要像之前那样,将封装好的list对象,再转变为jsonobject,直接一个set,get方法,然后将相应的root的地方设置为这个list对象的名字即可。(这里研究了半天,测试是后台一直可以看到抓到了数据,但是前台就是没有数据记录)。
至此,将相应的store放入grid panel中就好了

Extjs 4.1 struts2.3 返回json 初试的更多相关文章

  1. struts2注解返回json

    Struts2使用注解方式返回Json数据 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/Geek_Alex/article/details/788 ...

  2. Struts2自定义返回Json类型result

    本来Struts2有自己的json类型的返回结果,并提供了插件,但是它有一个问题,那就是它会将所有序列化的字段都返回,如果想要制定返回Action的某一个属性,则需要在配置result时,配置参数(这 ...

  3. struts2后台返回json到jsp页面

    1.在action定义一个全局变量如: private Map<String, Object> dataMap; 2.控制层方法 说明:主要的目的是把我们定义的Map转为Json对象,然后 ...

  4. struts2注释返回json数据

  5. 深入了解Struts2返回JSON数据的原理

    首先来看一下JSON官方对于"JSON"的解释: JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析 ...

  6. (转)Struts2返回JSON数据的具体应用范例

    转载自 yshjava的个人博客主页 <Struts2返回JSON数据的具体应用范例> 早在我刚学Struts2之初的时候,就想写一篇文章来阐述Struts2如何返回JSON数据的原理和具 ...

  7. Struts2返回JSON数据的具体应用范例

    早在我刚学Struts2之初的时候,就想写一篇文章来阐述Struts2如何返回JSON数据的原理和具体应用了,但苦于一直忙于工作难以抽身,渐渐的也淡忘了此事.直到前两天有同事在工作中遇到这个问题,来找 ...

  8. Struts2返回JSON数据的具体应用范…

    Struts2返回JSON数据的具体应用范例 博客分类: Struts2 Struts2JSON  早在我刚学Struts2之初的时候,就想写一篇文章来阐述Struts2如何返回JSON数据的原理和具 ...

  9. struts2中的json

    这里放一个转载的struts2中json的详细应用和范例, http://yshjava.iteye.com/blog/1333104,这是个人在网上看到的很用心也很详细的一份关于struts2中js ...

随机推荐

  1. 五笔拼音反查精灵 v6.69 绿色版

    软件名称:五笔拼音反查精灵 v6.69 绿色版软件语言: 简体中文授权方式: 免费软件应用平台: Win7 / Vista / Win2003 / WinXP / Win2008 软件大小: 197K ...

  2. 一把刀终极配置Win7/8版 v2.0 绿色版

    软件名称: 一把刀终极配置Win7/8版 软件语言: 简体中文 授权方式: 免费软件 运行环境: Win8 / Win7 软件大小: 1.3MB 图片预览: 软件简介: 一把刀终极配置 For Win ...

  3. javascript点击焦点图

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  4. 动态得到WCF的代理类并生成代码

    Uri uri = new Uri("http://localhost:6580/Service1.svc?wsdl");             MetadataExchange ...

  5. 学习笔记——命令模式Command

    命令模式,将具体操作Receiver封在Command中,调用类只需要知道Command即可.

  6. Visual Studio中使用Git Flow

    在VS下使用 GitFlow管理项目开发 1.右键将你的解决方案添加到源代码管理,如果你的VS没有安装git,会提示安装,安装完成之后,在团队资源管理可以看到如下界面 (图一) 2.安装gitflow ...

  7. 批处理 取得当前路径 %CD%

    在DOS的批处理中,有时候需要知道当前的路径.在DOS中,有两个环境变量可以跟当前路径有关,一个是%cd%, 一个是%~dp0. 这两个变量的用法和代表的内容一般是不同的. 1. %cd% 可以用在批 ...

  8. hdu_5620_KK's Steel(水题)

    题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5620 题意:给你一个n长的钢管,要分的尽可能多,且任意三条不能构成三角形 题解:看hint就知道用递推 ...

  9. hdu_2665_Kth number(主席树)

    题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=2665 题意:给你一个区间,让你找这个区间第K大的数 题解:主席树模版题,也可以用划分树 #includ ...

  10. Lowest Bit

    Lowest Bit Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other) Total Su ...