struts2+json+jquery
来源:互联网 发布:投资连结保险 知乎 编辑:程序博客网 时间:2024/05/29 16:00
package com.gtercn.ecard.action.organization;import java.util.List;import net.sf.json.JSONObject;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;import com.gtercn.ecard.bean.vo.OrganizationVO;import com.gtercn.ecard.common.BaseAction;import com.gtercn.ecard.service.organization.OrgService;import com.gtercn.ecard.util.JsonMetaData;@Controllerpublic class ShowOrgAction extends BaseAction {private static final long serialVersionUID = 1L;
//result为异步返回页面的结果private JSONObject result;@Autowiredprivate OrgService orgService;
//Json工具类(自定义)@AutowiredJsonMetaData jsonUtil;@Overridepublic String execute() throws Exception {jsonUtil = new JsonMetaData();List<OrganizationVO> fistNodes = orgService.getFirstNode();this.setResult(JsonMetaData.getJsonResult(fistNodes));return SUCCESS;} //struts默认把具有get方式的数据域传回回调函数中public JSONObject getResult() {return result;}}
package com.gtercn.ecard.util;
import java.util.List;
import net.sf.json.JSONArray;import net.sf.json.JSONObject;import net.sf.json.JsonConfig;import net.sf.json.util.PropertyFilter;
import org.springframework.stereotype.Controller;
import com.gtercn.ecard.bean.organization.Organization;import com.gtercn.ecard.bean.vo.OrganizationVO;
/** * json 工具类 * * @author gtercn_hpf * */@Controllerpublic class JsonMetaData { /** * 得到一个json数组 * * @param fistNodes * @return */ public static JSONObject getJsonResult(List<OrganizationVO> fistNodes) {
JsonConfig jsonConfig = new JsonConfig();
JSONObject json = new JSONObject();
json.put("data", JSONArray.fromObject(fistNodes, jsonConfig)); return json;
}
public static JSONObject getSubNodeJson(List<Organization> nodes) { JsonConfig jsonConfig = new JsonConfig();
JSONObject json = new JSONObject();
//字段过滤器
jsonConfig.setJsonPropertyFilter(new PropertyFilter() { @Override public boolean apply(Object source, String name, Object value) { System.out.println(name); if (source != null) { if (name.equals("orgTitles") || name.equals("persons")) { return true; } } return false; } });
json.put("data", JSONArray.fromObject(nodes, jsonConfig)); return json; }}
页面ajax代码
function showOrg(){ $.ajax({ type:"POST", url:"showOrg.action", success:function(msg){
//默认返回的为字符串,需要把字符串转化为json对象 var backMsg=eval("("+msg+")"); var tree=backMsg.result.data; var zNodes=[]; for(var i=0;i<tree.length;i++){ var c = {"id":tree[i]["id"],"pId":tree[i]["pId"],"name":tree[i]["name"],"open":true,"click":"showChildrenNodes('"+tree[i]["id"]+"');"}; zNodes.push(c); } $.fn.zTree.init($("#treeDemo"), setting,zNodes); } }); }
时间有限就先记录这些把。。。 把javabean转化为json时会碰到hibernate的懒加载问题,可以opensessioninvew 这样懒加载的时候session不会关闭,再就是过滤掉乱连字段,注意大小写问题!!!!!
- struts2 + jquery struts2 处理json
- Struts2+JQuery+JSON集成
- struts2 & jquery & json !!!
- struts2 + jquery + json
- struts2+jquery+json
- struts2+jquery+json
- Struts2+JQuery+Json实例
- struts2+json+jquery
- struts2+json+jquery
- Struts2+JQuery+Json实例
- jquery ajax struts2 json
- struts2+jquery+json集成
- struts2 + jquery + json
- struts2+jquery+ajax+json
- Struts2+JQuery+Json实例
- Struts2+JQuery+Json实例
- struts2+jquery+json集成
- jquery+struts2+json
- shell 对内容排序
- 【算法复习二】传统基本算法(分治----残缺棋盘问题)
- Linux下安装Python
- Oracle中连接与会话的区别
- 一些有意思的网站
- struts2+json+jquery
- libcurl教程
- 【ASP.NET】GridView与ObjectDataSource的使用
- NoSQL Ecosystem
- 软件开发者面试百问部分答案
- 自定义ProgressDialog
- 搜索列表页,用数据库排序分页和like语句,限制TPS
- ubuntu 下 sudo 不用输密码
- QTableView 显示行但不显示数据