⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 statictree.java

📁 这个是我们做土地局的一个项目。感觉不错。欢迎下载
💻 JAVA
字号:
package huayi.xt.staticTree;
import java.sql.*;

import javax.servlet.*;

public class staticTree {
huayi.gg.dbConn.dbConn DBbean=new huayi.gg.dbConn.dbConn();

String BMMC;

public void init(javax.servlet.jsp.JspWriter out,javax.servlet.http.HttpServletRequest request,javax.servlet.http.HttpServletResponse response,int lc[]) throws Exception {
out.println("<title>用jsp种树 静态</title>");

buildTree(out,0,0,lc);//初始调用
}

public void buildTree(javax.servlet.jsp.JspWriter out,int PID,int level,int lc[]) throws Exception
	{  // 注:PID为0表示根结点
level++;
ResultSet rs1=DBbean.executeQuery("select * from T_QYJGSB where PID="+PID+" order by id");
int count=0;   //count记录当前节点兄弟总数;
while(rs1.next()){count++;}
//out.print(count);
ResultSet rs=DBbean.executeQuery("select * from T_QYJGSB where PID="+PID+" order by id");
int turn=0;   //turn记录当前节点排行;
while(rs.next()) {
turn++;
if (turn==count) { lc[level]=1; } else { lc[level]=0; }  //lc数组作用:记录每个节点回溯到其起始祖先是否最后一个孩子,以决定画verline.gif或blank.gif或branch-end.gif
out.println("<nobr><div>");
for (int k=level+1;k<=14;k++) lc[k]=2;
for (int i=2;i<=level;i++)
	{if (lc[i]==0) { out.print("<img src=\"image/verline.gif\"> ");}
	   else {if(lc[i-1]==0) { out.print("<img src=\"image/verline.gif\"> ");}
		 else  if ((lc[i+1]!=1)&&(lc[i+1]!=0)) {  out.print("<img src=\"image/branch-end.gif\"> ");  }
		     else {out.print("<img src=\"image/blank.gif\"> ");}
			 }}
int a=rs.getInt("id");
String b=rs.getString("BMMC");
if(has_child(a)) {                   //非叶子节点情况
  if(level==1)                      //根结点
	  {out.print("<img alt=\"展开\" style=\"cursor:hand;\" onclick=\"myClick3('"+a+"');\" id=\"img"+a+"\" src=\"image/minus-begin.gif\"> ");} 
   else   if(lc[level]==1)                 //最后一个孩子
	{out.print("<img alt=\"展开\" style=\"cursor:hand;\" onclick=\"myClick2('"+a+"');\" id=\"img"+a+"\" src=\"image/plus-end.gif\"> ");} 
  else                             //非最后一个孩子
	{out.print("<img alt=\"展开\" style=\"cursor:hand;\" onclick=\"myClick('"+a+"');\" id=\"img"+a+"\" src=\"image/plus.gif\"> ");}

out.print("<img id=\"im"+a+"\" src=\"image/closedfold.jpg\"> <span onclick=\"myClick1('"+a+"');\" style=\"cursor:default;\" id=\"span"+a+"\"><a href='XT_JGSZ_xx2.jsp?id=" +a+"' target=iframe>"+b+"</a></span>");

if (level>=2)                 //初始页面时,2层以上部门隐藏
out.println("<div style=\"display:none;\" id=\"div"+a+"\">");
    else out.println("<div style=\"display:block;\" id=\"div"+a+"\">");
buildTree(out,a,level,lc); //递归调用
out.println("</div>");
} else                            //叶子节点情况
{ResultSet rs2=DBbean.executeQuery("select BMBH from T_QYJGSB where id="+a);
while(rs2.next()){String BMBH=rs2.getString("BMBH");
 if(level==1)                      //根结点
	  {out.print("<img src=\"image/minus-begin-only.gif\"> ");} 
   else  if(lc[level]==1)              //最后一个孩子
	{out.print("<img src=\"image/minus-end.gif\"> ");} 
   else                       //非最后一个孩子
 	 {out.print("<img src=\"image/minus.gif\"> ");}
out.print("<img src=\"image/ren.jpg\"> <span onclick=\"myClick1('"+a+"');\" style=\"cursor:default;\" id=\"span"+a+"\"><a href=\"XT_JGSZ_BMRY.jsp?BMBH=" +BMBH+"\" target='iframe'>"+b+"</a></span>");}
	}
	out.println("</div></nobr>");
}
rs.close();
rs=null;
}
private boolean has_child(int PID) throws Exception { //判断PID节点是否有孩子
ResultSet rs=DBbean.executeQuery("select * from T_QYJGSB where PID="+PID+" order by id");
return rs.next();
}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -