Atitit.各種 資料類型 ( 樹形結構,表形資料 ) 的結構與儲存資料庫 attilax 總結,atititattilax

來源:互聯網
上載者:User

Atitit.各種 資料類型 ( 樹形結構,表形資料 ) 的結構與儲存資料庫 attilax 總結,atititattilax

Atitit.各種  資料類型 ( 樹形結構,表形資料  ) 的結構與儲存資料庫 attilax  總結

 

1. 資料結構( 樹形結構,表形資料,對象結構 ) 1

2. 程式設計語言中對應的資料結構 java c# php ( Dic/Map      List    datatable ) 1

3. 資料庫儲存資料  1

4. 資料的表形顯示( 多條記錄 與單條記錄 ) 2

5. ASP.NET 資料控制項:GridView,DataList,Repeater ,DetailsView,FormView。 2

6. 樹形資料常見的操作 2

6.1. 擷取所有子節點 2

7. Java  操作註冊表 2

7.1. 使用Preferences API (限定訪問路徑了) 2

7.2. 使用JNI4

7.3. Jregistrykey 推薦 4

7.4. Jregistry 4

 

1. 資料結構( 樹形結構,表形資料,對象結構 )

 

2. 程式設計語言中對應的資料結構 java c# php ( Dic/Map      List    datatable )

 

 

作者:: 老哇的爪子 Attilax 艾龍,  EMAIL:1466519819@qq.com

轉載請註明來源: http://blog.csdn.net/attilax

 

3.  資料庫儲存資料 

表形資料當然適合 常見的關係型資料庫了。。

樹形資料庫(層次資料庫ldap ,,,註冊表 ) ,樹形資料庫可以使用LDAP來訪問,相當於rmdb的sql

物件導向資料庫  db4o

 

 

 

4. 資料的表形顯示( 多條記錄 與單條記錄 )

 

 

 

 

5. ASP.NET 資料控制項:GridView,DataList,Repeater ,DetailsView,FormView。

 
ASP.NET 資料控制項綜述: 
1.前3個用於呈現多條記錄,後面2個用於呈現單條資料明細,即常用的記錄明細。 
2.GridView和DetailsView控制項的布局固定,自訂資料顯示的布局功能有限,一般適合布局簡單的

資料呈現。3.DataList,Repeater和FormView資料控制項都有很強的自訂布局能力,如果資料呈現

需要較為複雜的布局方案,這3個控制項是首選。

 

 

6. 樹形資料常見的操作6.1. 擷取所有子節點

 

 

7. Java  操作註冊表7.1. 使用Preferences API (限定訪問路徑了)

由於java程式是“write once, run everywhere”,用java讀寫註冊表,那程式的跨平台性就差了。java對註冊表的操作,在jdk1.4以前的版本中,那是不可能的,只能用 JNI來實現;然而jdk1.4之後提供的prefs包可以操作windows註冊表,不過定死了root只在SOFTWARE/JavaSoft /prefs下,估計也是出於這種兩難吧,又要保證所謂平台無關,還要照顧大家對windows的依賴

。而 JDK 提供操作 Windows 的 API 也就是 Preferences,因為這個 API 也是跨平台的,所功能比較弱,在 Win32 下只能用來操作 HKCU\Software\JavaSoft 和 HKLM\Software\JavaSoft 下及子節點的資料。

自由訪問註冊表其他鍵的值光用 Java 是做不到的,必然方案就是 JNI,

 

Preferences API並不是為訪問Windows註冊表而設計的,這是值得指出的一點。

我們之所以會有上面的誤解是由於Sun的Windows版本的JDK在實現Preferences API時使用了Windows註冊表作為存放庫,即我們用Preferences API儲存的資料會儲存到Windows註冊表中,這樣Preferenes API也就有了訪問Windows註冊表的能力。但是換到其它的平台或其它廠商的JDK實現又會怎麼樣呢?這個問題是和Preferences API的實現相關的,我們沒有辦法回答。 

如果程式不關心存放庫的細節,只是要找一個存放資料的地方,那麼Preferences API很合適。

Preferences API也是有局限的,請您考慮兩個問題: 

· 一個Java軟體,這次我在Sun的JDK上運行並使用Preferences API儲存了我的個人喜好,下次我在IBM的JDK上運行,這時我的個人喜好還可以通過Preferences API得到嗎?可能可以也可能不可以,這時的行為是由Sun和IBM的Preferences API實現決定的。(在相同的JDK實現上可以使用Preferences API來在不同的程式間共用資料) 

· 一個Java軟體需要讓使用者佈建是否和作業系統一起啟動,類似的需求還很多。這類需求就是要求Java程式有真正的和相關作業系統協同的能力。這種能力不是Preferences API的設計目標。 

java讀寫註冊表需要用到兩種方式:
1. java.util.prefs.* 中的包
   其中 Preferences.systemRoot() 得到的是 HKEY_LOCAL_MACHINE/Software/JavaSoft/prefs 可以在此位置之下方便的進行註冊表的        讀寫
   Preferences.userRoot() 得到的是 HKEY_LOCAL_USER/Software/JavaSoft/prefs,可以在此位置下進行註冊表

但是對其他
   位置操作就不方便。
   範例程式碼:
   import java.util.prefs.*;   
   public class Registery {   
     String[] keys = {"aaa", "bbb", "ccc"};   
     String[] values = {"1", "2", "3"};   
     //把相應的值儲存到變數中去   
    public void writeValue() {   
     // HKEY_LOCAL_MACHINE/Software/JavaSoft/prefs下寫入註冊表值.   
        Preferences pre = Preferences.systemRoot().node("/javaplayer");   
        for (int i = 0; i < keys.length; i++) {   
            pre.put(keys, values);   
        }   
    }   
    public static void main(String[] args) {   
        Registery reg = new Registery();   
        reg.writeValue();   
    }   
  }  
  執行代碼的結果會在 HKEY_LOCAL_MACHINE/Software/JavaSoft/prefs/javaplayer 位置插入三個鍵值

7.2. 使用JNI

Windows作業系統提供了操作註冊表的API,因此用JNI將Java和這些API串連起來我們就獲得了用Java操作註冊表的能力。這說起來有些簡單,實現起來卻需要處理大量的細節。幸運的是這樣的工作已經有人做了,我們要感謝他們。下面我們就來看看其中的一個包。

com.ice.jni.registry包是通過JNI(Java native interface)實現的Windows註冊表操作API,可以用來訪問、修改和匯出Windows註冊表。現在這個包已經公開了,可以放心的使用而不 必擔心license的問題,並且包括一個構建好的DLL和Java、C的原始碼。它可以在Java 1.1和更高的版本上工作。 

 

2. 開源讀寫註冊表的庫 registry-3.1.3 首頁地址:http://www.trustice.com/java/jnireg/index.shtml
   下載後需要將ICE_JNIRegistry.dll放到目前正在用的 jdk的bin目錄下

7.3. Jregistrykey 推薦7.4. Jregistry 

 jRegistry通過JNI技術來訪問WINDOWS註冊表API。

 

 

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.