2012-02-06 68 views
-2

我需要在不使用數據庫的情況下在2個表上執行聯接(我已經從2個CSV文件中讀取)。我不知道集合(List,ArrayList)。如果任何人都可以在任何一種類型的連接上提供詳細的示例代碼片段,這將有所幫助。如何在沒有數據庫的情況下執行java聯接

+0

你在哪裏保存這些表?在二維數組? – shift66 2012-02-06 06:51:07

+0

可能的重複:http://stackoverflow.com/questions/9139886/implementing-different-types-of-joins-with-out-database-in-java – 2012-02-06 07:02:42

回答

0

假設你有以下CSV文件:

id,name,description 
1,Foo,FooBar 
2,Bar,BarFo 
3,Hey,Ho 

,第二個:

id,year 
2,1990 
1,1923 

然後你可以有以下的(我跳過構造函數和方法現在):

public class Item { 
    public String name; 
    public String description; 
} 

和第二:

public class Date { 
    public final int year; 
} 

然後你可以有第三個:

public class Joined { 
    public final Item item; 
    public final Date date; 
} 

然後你可以有一個Map<Integer,Joined>,你可以先讀取CSV和創建Joined對象只與Item部分填寫,然後閱讀第二個CSV文件,您可以填寫Joined對象的Date部分。

在此加入部分中,您可以決定要實施哪種加入類型。

如果您有不同的密鑰,那麼您必須更改Map的密鑰,或者如果您有複雜密鑰,則可能需要創建一個新類。

相關問題