2011-03-19 177 views
1

我有一些非常長的SQL語句需要通過JDBC運行。我想知道組織他們的最佳程序是什麼?我應該創建一個單獨的類,將它們定義爲變量,並引用我的主應用程序類中的那些類變量?組織JDBC項目

或者我應該把它們放到應用程序類中,並處理它很難閱讀?

任何幫助將是偉大的。

回答

2

我不喜歡單獨文件的想法。我會把它們放在他們使用的文件中,因爲我不想去其他地方去弄清楚數據庫在做什麼。

我會讓它們成爲靜態的最終字符串,所以我不會每次都重新創建它們。如果你連接或使用StringBuilder,你可能會犯錯。

我一定會在任何地方使用PreparedStatements。您將從SQL注入安全,您的代碼也會更好。

有一個對象的CRUD接口,使用數據訪問對象模式:

public interface FooDao<K, T> 
{ 
    T find(Long id); 
    List<T> find(); 
    K save(T instance); 
    void delete(T instance); 
} 
0

我能想到的將它們保持在一起的一個好處是,如果更改數據模型,可以很容易地轉到查詢所在的位置並查找受影響的查詢。

如果你有疑問的少數,我不會太擔心,只是格式化他們,使他們很容易讀取(壽說去無論你使用什麼方法!)

如果你想要去的類與字符串變量的路線,如果您的查詢數量會很大(> 100),那麼我會將它們分成幾個不同的類。

0

將腳本存儲在從應用中讀取的單獨文件中可能是可行的。如果腳本是SQL,那麼爲它們分配一個文件會使它們直接運行以進行調試。

如果你有大的查詢語句,你也可以定義視圖。

0

我認爲最簡單的是無論是從文件中讀取SQL,如果有很多,或使一堆準備好的陳述,只是不包裝它們。