服务器返回 json数据 给 easyui tree
来源:互联网 发布:git源码编译安装 编辑:程序博客网 时间:2024/05/16 11:20
菜单 MenuAction.java
package com.kcsj.action;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.json.annotations.JSON;
import com.kcsj.bean.Menu;
import com.kcsj.json.MenuJson;
import com.kcsj.service.IMenuService;
import com.kcsj.tool.HttpJsonUtil;
@Action(value = "menuAction") //Spring注入,方便前后台调用
public class MenuAction extends BaseAction {
private IMenuService menuService;
private Menu menu = new Menu();
private String id;
public Menu getMenu() {
return menu;
}
public void setMenu(Menu menu) {
this.menu = menu;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
@JSON(serialize=false)
public IMenuService getMenuService() {
return menuService;
}
public void setMenuService(IMenuService menuService) {
this.menuService = menuService;
}
//前台通过menuAction!queryManu() 调用该方法
public void queryMenu() {
List<Menu> menuList = new ArrayList<Menu>();
try {
menu.setMenuId(id);
menuList = menuService.queryMenu(menu);
// list转换为json,具体见下
JSONArray jsonArray = MenuJson.ToJsonArray(menuList);
//自定义类,具体见下
HttpJsonUtil.writeJsonData(response, jsonArray);
//异常处理
} catch (Exception e) {
e.printStackTrace();
JSONObject jsonResponse = new JSONObject();
try {
jsonResponse.put("result", "failed");
jsonResponse
.put("message", URLEncoder.encode("操作异常!", "utf-8"));
HttpJsonUtil.writeJsonData(response, jsonResponse);
} catch (Exception e1) {
e1.printStackTrace();
}
}
}
}
json数据转换
MenuJson.java
public class MenuJson {
public static JSONArray ToJsonArray(List<Menu> menuList) {
JSONArray jsonArrayIn = new JSONArray();
for (Menu menu : menuList) {
JSONObject jsonObject = new JSONObject();
jsonObject.put("id", menu.getMenuId());
jsonObject.put("text", menu.getName());
Map<String, Object> attributes = new HashMap<String, Object>();
attributes.put("url", menu.getUrl());
jsonObject.put("attributes", attributes);
if(menu.getIsLeaf().equals("0")){
jsonObject.put("state", "closed");
}else{
jsonObject.put("state", "open");
}
jsonArrayIn.put(jsonObject);
}
return jsonArrayIn;
}
}
HttpJsonUtil.java
// 将数据返回前台
public static void writeJsonData(HttpServletResponse response,
JSONArray jsonArray) throws Exception {
response.setCharacterEncoding("UTF-8"); //编码设置,防止乱码
response.getWriter().write(jsonArray.toString());
}
说明: 网上很多通过struts 返回json数据出了很多问题,这种方法的好处就是直接将数据返回前台。省去了struts。
- 服务器返回 json数据 给 easyui tree
- jquery easyui tree动态加载-服务端struts返回json数据
- easyui struts后台实现tree返回json数据
- easyui struts后台实现tree返回json数据
- easyui struts后台实现tree返回json数据
- 服务器采用JSON格式返回数据给安卓客户端
- 生成符合EasyUI-Tree的JSON数据
- 服务器返回JSON数据使用
- 给服务器发送JSON数据
- 发送JSON数据给服务器
- 给服务器发送JSON数据
- 发送json数据给服务器
- asp.net返回json 动态生成jQuery Easyui tree
- java 后台返回json数据给前台
- java 后台返回json数据给前台
- 关于后台返回json数据给前台
- shh框架返回json数据给前台
- 使用EasyUI Tree异步加载JSON数据 生成树
- 开发基于 Google Map 的 Android 应用
- HDFS Append/Hflush/Read design
- static class 静态类(Java)
- 字符串操作:统计子串在主串中出现的次数
- 标准滚动栏msdn示例简化版
- 服务器返回 json数据 给 easyui tree
- js操作cookie,将字符串数据解析为json格式
- 将IE9降为IE8
- dataTables-动态绑定问题
- iOS开发笔记--字符串连接问题
- JAVA 蜂鸣声 代码 beep
- 正态分布的前世今生(一)
- windows2003 做集群的方法和注意事项
- C++练习之 Fibonacci 数列