java后台json如何传递到jsp中解析
需求: 系统前端jsp使用的是easyUi的datagrid展示了一些任务信息,任务信息中有个状态信息显示的值是数字,
需要根据后台保存的映射关系,将状态显示为描述信息。

原来的jsp前端显示:

解决方案,在后台使用创建json数据,然后传递到前台jsp页面中,并使用eval解析后获取值对应的描述,操作如下:
1. 创建json数据(java)
//任务列表
public static final String TASK_PENDING = "0";
//命令处理成功
public static final String TASK_COMMAND_SUCCESS = "1";
//命令处理失败
public static final String TASK_COMMAND_FAILED = "2";
//下载处理成功
public static final String TASK_DOWN_SUCCESS = "3";
//下载处理失败
public static final String TASK_DOWN_FAILED = "4";
//邮件发送成功
public static final String TASK_MAIL_SUCCESS = "5";
//邮件发送失败
public static final String TASK_MAIL_FAILED = "6";
//处理成功
public static final String TASK_COMPLETE = "99"; public static String getStatusJson(){ JSONObject statusJson = new JSONObject();
statusJson.put(TASK_PENDING, "待处理");
statusJson.put(TASK_COMMAND_SUCCESS, "脚本执行成功");
statusJson.put(TASK_COMMAND_FAILED, "脚本执行失败");
statusJson.put(TASK_DOWN_SUCCESS, "文件下载成功");
statusJson.put(TASK_DOWN_FAILED, "文件下载失败");
statusJson.put(TASK_MAIL_SUCCESS, "邮件发送成功");
statusJson.put(TASK_MAIL_FAILED, "邮件发送失败");
statusJson.put(TASK_COMPLETE, "完成"); return statusJson.toString();
}
2. 传值(java)
String statusJson = Constants.getStatusJson();
resultMap.put("statusJson",statusJson);
3. 前端jsp中使用js获取值(js)
//根据传入的状态代码获取状态描述
function getStatusDesc(key){
var obj = eval("(" + '${statusJson}' + ")");
return obj[key];
}
4. 使用datagrid的formatter调用function
{
field: 'status',
title: '状态',
halign: 'left',
align : 'left',
width : '100',
formatter:function(value,row,index){
var desc = getStatusDesc(value);
return desc;
}
},
view code
最终显示结果如下:

后话: 刚开始是在后台使用map作为传值,js中解析map比较复杂,后来改用json后方便多了。
java后台json如何传递到jsp中解析的更多相关文章
- 使用Maven构建Java Web项目时,关于jsp中引入js、css文件路径问题。
今天有点闲,自己动手搭建一个Java Web项目,遇到jsp中引入js.css文件时路径不正确的问题,于是在网上查阅了很多资料,最终都无法解决问题,于是,上stackoverflow找到了解决方法,这 ...
- [原创]java WEB学习笔记36:Java Bean 概述,及在JSP 中的使用,原理
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- SSH 框架controller向jsp传递List jsp中使用el表达式获取
mvc可以使用ModelAndViev传递数据选择跳转的视图 controller中的代码, 把一个模拟的表单studentListSimulate传给ModelAndView @RequestMap ...
- Java后台JSON数据的使用
1. List集合转换成json代码 List list = new ArrayList(); list.add( "first" ); list.add( "secon ...
- asp.net中json格式化及在js中解析json
类: public class UploadDocumentItem { public UploadDocumentItem() { } public string DocMuid { get; se ...
- 在SqlServer 中解析JSON数据 [parseJSON] 函数 数据库中 解析JSON
使用如下: SELECT * FROM parseJSON('{ "联系人": { "姓名": "huang", "网名" ...
- JSP详细解析
原文地址: http://www.cnblogs.com/rollenholt/archive/2011/07/04/2097376.html http://www.cnblogs.com/jy024 ...
- 前台传递给后台的JSON字符串中的引号 “” 在JAVA后台被转义为 "
前台传递给后台的JSON字符串中的引号 "" 在JAVA后台被转义为 " 1.问题: 前台数据,JSON字符串带有引号 "" ,数据被传递到后台 ...
- java传递json数据到前台jsp
在数据传输流程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键.例如: JSON字符串: var str1 = '{ &q ...
随机推荐
- [转]网易云音乐Android版使用的开源组件
原文链接 网易云音乐Android版从第一版使用到现在,全新的 Material Design 界面,更加清新.简洁.同样也是音乐播放器开发者,我们确实需要思考,相同的功能,会如何选择.感谢开源,让我 ...
- js访问url和cookie
function QueryString() { var data = []; this.Read = function() { var aPairs, aTmp; var queryString = ...
- Java反射机制--笔记
1.认识Class类 任何一个类都是Class类的实例对象,这个实例对象有三种表示方式. /*java 反射机制*/ // 获取类的方法 UserDao userDao = new UserDao() ...
- LevelDB场景分析2--Open
1.源码 1 Status DB::Open(const Options& options, const std::string& dbname, uint64_t new_ ...
- (三)RocketMq入门之独立线程处理业务
一.示例代码 这段代码实现了一个独立线程监听在一个特殊的消息队列上,一旦收到消息就处理并发送给MQ,然后推送给所有的消费者. import com.alibaba.rocketmq.client.ex ...
- java实现简单webserver(分析+源码)
在日常的开发中,我们用过非常多开源的webserver,比如tomcat.apache等等.如今我们自己实现一个简单的webserver,主要的功能就是用户点击要訪问的资源,server将资源发送到c ...
- Cocos2d-X开发中国象棋《二》project文件概述
我在上一篇博客中介绍了象棋的功能.在接下来的博客中将向大家介绍使用Cocos2d-X怎样一步一步开发中国象棋 开发工具: Cocos2d-X2.2.3 VS2012 项目的文件夹: Classes:存 ...
- Hive查看table在HDFS上的存储路径
hive>show databases;hive>use databasename;hive>show create table tablename; --查看table的存储路径h ...
- jenkins 执行远程linux命令
在Jenkins中进行构建时,可能需要首先SSH登录到一个远程服务器以执行必要的脚本,然后再执行构建.这时,需要安装SSH Plugin,并进行如下配置.1.在Jenkins界面,系统管理->管 ...
- 编写自己的jquery插件
如何编写自己的jquery插件 Jquery的插件主要分为三类: .封装对象方法的插件:大部分插件都是封装对象的插件 .封装全局函数的插件:将独立的函数添加到jquery的命名空间之下.Jquery. ...