EXTJS与java后台交互(二)JSON使用

上篇文章介绍了通过使用dwr在EXTJS代码里直接调用后台的Java方法.这篇文章介绍在没有调用Java方法,没有返回值的情况下获取Java的返回信息.就要用到的Extjs的submit配置项---success和failure来进行配置.
        Ext.form.Action.Submit的配置选项success、failure是根据返回json中success属性判断的,如果success为true,则success,false则failure,如果无json中无success属性,failure,故要提示操作是否成功,必须要返回success属性。
       
        这种方法用的也很多,在js界面除了调用Java方法来完成各种验证和取值外,还会执行表单的提交.提交了表单,并没有调用后台方法,通过这种方法便可以知道执行结果,来显示执行信息.


EXTJS页面部分代码:

[javascript]  view plain  copy
  1. //提交按钮  
  2. var submitButton = new Ext.Button(  
  3.                          {  
  4.                              text: '提交',  
  5.                              iconCls: 'c_page_white_get',  
  6.                              scope: this,  
  7.                              width: 75,  
  8.                              height: 24,  
  9.                              handler: function() {  
  10.                              //执行提交方法  
  11.                              this.submitData ( );  
  12.                           }  
  13. });  
  14.   
  15.   
  16. //提交时执行的方法  
  17. submitData : function( ) {  
  18.                       //提交form表单   
  19.                       this.uploadForm.getForm().submit({  
  20.                            waitMsg: '正在提交请稍后...',   
  21.                            //将表单信息提交到Servlet   
  22.                            url: ctx + '/testServlet, method: 'POST',  
  23.   
  24.                            //重点:success块   
  25.                            success: function(form, action) {  
  26.                                //showmessage是从后台传过来  
  27.                                Ext.MessageBox.alert('提示', action.result.showmessage);   
  28.                            },   
  29.                            //failure块   
  30.                            failure: function(form, action) {   
  31.                                Ext.Msg.alert('提示', action.result.msg, function() {   
  32.                                   window.close();   
  33.                                });   
  34.                            },   
  35.                            scope: this });   
  36. }   


Servlet代码:

[java]  view plain  copy
  1. public class testServlet extends  HttpServlet {  
  2.     
  3.          publicvoid doPost(HttpServletRequest request, HttpServletResponse response)  
  4.                             throwsServletException, IOException {  
  5.                    try{  
  6.                             //调用action等后台方法  
  7.                             //有个返回值,返回给界面的内容  
  8.                             String showMessage = new TestAction().test();  
  9.                             //设置response格式  
  10.                             response.setCharacterEncoding("UTF-8");  
  11.                             response.setContentType("text/html");  
  12.                             response.getWriter().write(  
  13.                                  "{'success':true,'showmessage':'"+ showMessage +"'}");  
  14.    
  15.                    }catch (Exception e) {  
  16.                             //失败时返回的信息  
  17.                             response.setCharacterEncoding("UTF-8");  
  18.                             response.setContentType("text/html");  
  19.                             response.getWriter().write(  
  20.                                                "{'success':false,'showmessage':'出现异常,操作失败'}");  
  21.                             response.setStatus(500);  
  22.                    }  
  23.    
  24.          }  
  25.    
  26.          publicvoid doGet(HttpServletRequest request, HttpServletResponse response)  
  27.                             throwsServletException, IOException {  
  28.                    doPost(request,response);  
  29.          }  
  30. }  


           通过例子可以看出,success和failure方法使用的是json字符串的方式将返回值以字符串的格式通过response携带回js界面.

          Ext的配置选项success、failure是根据response的status属性,即状态码决定的,200则为success,404或500等则为failure。

          EXTJS与Java后台的交互是很方便的,这里介绍的两种方法各自用在不同的场合下,根据需要来进行选择.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1、 完善的Web表现层开发包:为企业Web表现层开发人员提供的一套完整、高效、美观的B/S结构设计表现层解决方案,简单易学。 a) 在ExtJs2.X的基础上进行的二次开发与通用接口设计,让繁琐的页面开发简单易行; b) 极大提高企业的项目Web表现层的开发效率; c) 统一企业的项目UI设计,统一的框架结构,能迅速规范企业的Web表现层代码设计规范,最大限度的减轻企业后期的项目管理、维护、升级成本; d) 减少企业Web表现层开发人员的培训投入; 2、 完善的组件开发包:为企业组件开发人员提供的一套完整、稳定、高效的B/S结构设计业务逻辑层解决方案。 a) 极大提高企业的项目业务逻辑层组件开发效率; b) 统一的接口规范,能迅速规范企业的业务逻辑层组件代码设计规范,最大限度的减轻企业后期项目管理、维护升级成本; c) 减少企业业务逻辑层组件开发人员的培训投入; 3、 分层结构设计:Efs框架严格按照MVC模式设计开发。 a) 能帮助企业迅速发挥团队开发优势,合理分工协作(能迅速将Web表现层开发,业务逻辑组件开发,系统设计合理分离)。 b) 标准的三层结构模型,为系统的稳定、高效运行打下坚实基础。 4、 完善的基础数据库设计: a) 完整的事务、事件管理、用户、单位、角色、权限管理设计,能快速帮助企业在不同的项目中快速完成用户、单位、角色、权限的分配,迅速投入到项目本身的业务系统开发中。 b) 完整的字典管理功能,能方便的对业务系统的全部字典文件进行维护。 c) 标准通用分页查询存储过程设计,为业务系统开发过程中的分页查询提升效率。 d) 灵活稳定的编码分配设计,只需要通过配置即可快速实现可满足各种要求的唯一编码。 e) 健全的汉字拼音管理,收录了常用的3万多汉字的全拼与简拼,能迅速完成对汉字的全拼与简拼的翻译处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值