📄 mytree.java
字号:
package com.dt.test.mytree;
import java.sql.Connection;
import java.util.List;
import java.util.Set;
import com.dt.test.pojo.Dir;
import com.dt.test.pojo.Node;
import com.dt.test.pojo.Point;
public class MyTree {
public static Dir root;
public List<Point> allPoints;
public static Dir getRoot() {
return root;
}
public static void setRoot(Dir root) {
MyTree.root = root;
}
public MyTree(){
Connection conn=DBFactory.getConn();
Dao dao=new Dao(conn);
allPoints=dao.queryData();
DBFactory.closeConn(conn);
constructMyTree();
/**
* 测试root里内容
List<Point> temp=root.getPoints();
for(Point p:temp){
System.out.println(p);
if(p.getType().equals("dir")){
Dir dir=(Dir)p;
System.out.println(dir.getName()+"folder size: "+dir.getPoints().size());
List<Point> temp1=dir.getPoints();
for(Point p1:temp1){
System.out.println(p1);
if(p1.getType().equals("dir")){
Dir dir1=(Dir)p1;
System.out.println(dir1.getName()+" folder size:"+dir1.getPoints().size());
}
}
}
}
*/
}
public static Boolean deletePointInDB(Long id){
Connection conn=DBFactory.getConn();
Dao dao=new Dao(conn);
return dao.deleteById(id);
}
public Dir findParentById(Long pid){
Connection conn=DBFactory.getConn();
Dao dao=new Dao(conn);
return (Dir)dao.findById(pid);
}
public static void updatePoint(Long id,Long pid){
Connection conn=DBFactory.getConn();
Dao dao=new Dao(conn);
dao.updatePointByPid(id,pid);
DBFactory.closeConn(conn);
}
public void constructMyTree(){
if(root!=null){
root.getPoints().clear();
allPoints.clear();
}
Connection conn=DBFactory.getConn();
Dao dao=new Dao(conn);
allPoints=dao.queryData();
DBFactory.closeConn(conn);
for(Point p:allPoints){
if(p.getPid()==0&&p.getType().equals("dir")){
root=(Dir)p;
}else{
Dir dir=getParentPoint(p.getPid(), allPoints);
dir.getPoints().add(p);
}
}
}
public Dir getParentPoint(Long pid,List<Point> tree){
Dir dir=null;
for(Point temp:tree){
if(temp.getId()==pid){
dir=(Dir) temp;
break;
}
}
return dir;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -