java_easyui体系之Tree的加载(三)

2014-11-24 03:26:50 · 作者: · 浏览: 2
ss :
  • Folder
    • Sub Folder 1
    • File 2
    • File 3
  • File21

initial tree by java script:


    Dynamic load tree :



      2、TreeAction:


      package com.chy.ssh.web.action;
      
      import java.util.ArrayList;
      import java.util.HashMap;
      import java.util.List;
      import java.util.Map;
      
      import com.chy.ssh.business.bean.TreeDTO;
      import com.chy.ssh.business.bean.modal.EasyUITree;
      import com.chy.ssh.business.service.TreeService;
      import com.chy.ssh.utils.WriteJson;
      import com.opensymphony.xwork2.ActionSupport;
      
      public class TreeAction extends ActionSupport {
      	
      	private static final long serialVersionUID = 1L;
      	private TreeService treeService;
      	private String id;
      	
      	public void treeLoad(){
      		//从数据库中查询的保存tree的集合、比如id、父类id、text等等、可自己扩展
      		List
        
          list = treeService.getTreesByParentId(id);
      		//用于前台显示的tree的属性、比如id、state、text、checked等等
      		List
         
           eList = new ArrayList
          
           (); if(list.size() != 0){ for(TreeDTO t : list){ EasyUITree e = new EasyUITree(); e.setId(t.getId()); e.setText(t.getText()); Map
           
             attributes = new HashMap
            
             (); attributes.put("url", t.getUrl()); e.setAttributes(attributes); int count = treeService.countChildrens(t.getId()); if(count > 0){ //注意state这个属性、当他为open时、说明这个节点是个文件夹、会以文件夹的形式显示、 //当他是closed的时候、说明这个节点是一个具体的文件节点、不会以文件夹的形式显示。 e.setState("closed"); } eList.add(e); } } id = null; //将含有用于显示tree的信息的集合、转换成json格式、传到前台。 WriteJson.pwObj(eList); } public TreeService getTreeService() { return treeService; } public void setTreeService(TreeService treeService) { this.treeService = treeService; } public String getId() { return id; } public void setId(String id) { this.id = id; } }
            
           
          
         
        

      3、底层TreeDAOImpl 中间serveice省略:


      package com.chy.ssh.business.dao;
      
      import java.util.ArrayList;
      import java.util.List;
      
      import org.springframework.dao.DataAccessException;
      import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
      
      import com.chy.ssh.business.bean.TreeDTO;
      
      public class TreeDAOImpl extends HibernateDaoSupport implements TreeDAO {
      
      	
      	
      	public int countChildrens(String id) {
      		return Integer.parseInt(String.valueOf(this.getHibernateTemplate().find("select count(*) from TreeDTO t where t.pid = '"+id+"'").get(0)));
      	}
      
      	@SuppressWarnings("unchecked")
      	public List
        
          getTreesByParentId(String id) {
      		StringBuffer hql = new StringBuffer();
      		if(id == null || "".equals(id)){
      			hql.append("from TreeDTO t where t.pid is null ");
      		}else{
      			hql.append("from TreeDTO t where t.pid = '"+id+"' ");
      		}	
      		List
         
           list = new ArrayList
          
           (); try { list = this.getHibernateTemplate().find(hql.toString()); } catch (DataAccessException e) { e.printStackTrace(); } return list; } }
          
         
        


      更多内容 : java_easyui体系之目录――00