易截截图软件、单文件、免安装、纯绿色、仅160KB

java树形结构 算法

最近看到一个有意思的树形结构,为每个节点添加了lft

rgt
两个属性。这样查找该节点的子节点、
查找该节点所有父节点,就不用去递归查询,只需要用
between

and
语句就可以实现。下面以创建一个栏目树为例,以下是我的理解。
  一般来讲,我们创建栏目树的时候,大多只需要一个外键parentid
来区分该节点属于哪个父节点。数据库的设计如下图:
这样一来,
1.查找该节点的所有子节点,则需要采用
sql
的递归语句:
Sql代码 < type="application/x-shockwave-flash" width="14" height="15" src="http://www.javaeye.com/javascripts/syntaxhighlighter/clipboard_new.swf" src="http://www.javaeye.com/javascripts/syntaxhighlighter/clipboard_new.swf" flashvars="clipboard=select%20*%20from%20tableName%20connect%20by%20prior%20id%3Dsj_parent_id%20start%20with%20%20id%3D1" quality="high" allowscriptaccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" width="14" height="15">
select
 * 
from
 tableName 
connect
 
by
 
prior
 id=sj_parent_id start 
with
  id=1  
select * from tableName connect by prior id=sj_parent_id start with id=1
 (
oracle 写法,
mysql
目前不支持,如果
mysql
想查找树形,可以利用存储过程
).
2.查找该节点的父节点

sql
递归语
句:
Sql代码 < type="application/x-shockwave-flash" width="14" height="15" src="http://www.javaeye.com/javascripts/syntaxhighlighter/clipboard_new.swf" src="http://www.javaeye.com/javascripts/syntaxhighlighter/clipboard_new.swf" flashvars="clipboard=select%20*%20from%20tableName%20connect%20by%20prior%20sj_parent_id%20%3Did%20start%20with%20%20id%3D1" quality="high" allowscriptaccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" width="14" height="15">
select
 * 
from
 tableName 
connect
 
by
 
prior
 sj_parent_id =id start 
with
  id=1  
select * from tableName c


相关文档:

Java 线程池的原理与实现

------------------------------------------------------------------------------------------------
这几天主要是狂看源程序,在弥补了一些以前知识空白的同时,也学会了不少新的知识(比如 NIO),或者称为新技术吧。
线程池就是其中之一,一提到线程,我们会想到以前《操作系统》的生产者与消费者,信号量,同步控制 ......

java中的this和super

this
对象本身。public class ThisTest {
ThisTest tTest;
public ThisTest(){
tTest = this;
}
public void test(){
System.out.println(this);
}
public static void main(String arg[]){
new ThisTest().test();
}
}

成员方法引用。
成员变量引用。public class ThisTest {
String name ......

Java利用MSNP协议登录MSN

请参见上一篇文章,登录MSN协议
具体Java实现:
命令序列:<<代表发送,>>代表结果
1.连接DS(Dispatcher Server),得到NS(Notification Server)
<<VER 1 MSNP18 CVR0
>>VER 1 MSNP18
<<CVR 2 0x0804 winnt 5.1 i386 MSNMSGR 14.0.8089.0726 msmsgs yourAccount
>>CVR 2 14.0.8089 ......

Java利用MSNP协议取得MSN联系人

上一篇文章中介绍了怎样利用MSNP登录MSN,在登录后便可取联系人了,很简单。
参考文章:
http://msnpiki.msnfanatic.com/index.php/MSNP13:Contact_List
http://msnpiki.msnfanatic.com/index.php/MSNP15:TicketTokens
在登录后,可以得到一个contacts.msn.com的ticketToken,这可用于后续的验证
一种方法是加入一个MS ......

一次性理清java 中的 类、抽象类、接口、继承、对象

类是广泛的概念,表示一个有共同性质的群体。如:人类。
代码:
       // 声明一个类“Human”
            class Human{
            priv ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号