一个composite 模式的问题 这是我的一个用composite模式写的一个ParentAction类:(经过简化)public class ParentAction implements IAction{ private String actionName; private int parentId; private int actionId; private List childAction; IDao idao=new DaoFacatory().getDao("Sql"); public ParentAction(int parentId,int actionId,String actionName){ this.parentId=parentId; this.actionId=actionId; this.actionName=actionName; ResultAction ra=new ResultAction();//中间的访问ibatis的过渡类 ra.setActionId(actionId); idao.initDao(); List list; try{ list=idao.getActionList(ra);//取得数 }catch(SQLException e){ throw new RuntimeException(e); } if(list!=null){ this.getSons(list); }}public void getSons(List resultAction){ idao.initDao(); childAction=new ArrayList(); IAction action; for(int i=0;i<resultAction.size();i++){ ResultAction ra=(ResultAction)resultAction.get(i); int parentId=ra.getParentId(); int actionId=ra.getActionId(); String actionName=ra.getActionName(); List actionList; try{ actionList=idao.getActionList(ra); }catch(SQLException e){ throw new RuntimeException(e); } if(actionList.size()>0){//判断是父结点还是儿子结点 action=new ParentAction(parentId,actionId,actionName); }else action=new LeafAction(parentId,actionId,actionName); childAction.add(i,action); } }}我在这里用了构造函数直接构建了一棵树,可是我在这个类里面封装了数据库,能不能将数据库独立出来,不放在类里面?请高手指点一二。