我有一些非常長的SQL語句需要通過JDBC運行。我想知道組織他們的最佳程序是什麼?我應該創建一個單獨的類,將它們定義爲變量,並引用我的主應用程序類中的那些類變量?組織JDBC項目
或者我應該把它們放到應用程序類中,並處理它很難閱讀?
任何幫助將是偉大的。
我有一些非常長的SQL語句需要通過JDBC運行。我想知道組織他們的最佳程序是什麼?我應該創建一個單獨的類,將它們定義爲變量,並引用我的主應用程序類中的那些類變量?組織JDBC項目
或者我應該把它們放到應用程序類中,並處理它很難閱讀?
任何幫助將是偉大的。
我不喜歡單獨文件的想法。我會把它們放在他們使用的文件中,因爲我不想去其他地方去弄清楚數據庫在做什麼。
我會讓它們成爲靜態的最終字符串,所以我不會每次都重新創建它們。如果你連接或使用StringBuilder,你可能會犯錯。
我一定會在任何地方使用PreparedStatements。您將從SQL注入安全,您的代碼也會更好。
有一個對象的CRUD接口,使用數據訪問對象模式:
public interface FooDao<K, T>
{
T find(Long id);
List<T> find();
K save(T instance);
void delete(T instance);
}
我能想到的將它們保持在一起的一個好處是,如果更改數據模型,可以很容易地轉到查詢所在的位置並查找受影響的查詢。
如果你有疑問的少數,我不會太擔心,只是格式化他們,使他們很容易讀取(壽說去無論你使用什麼方法!)
如果你想要去的類與字符串變量的路線,如果您的查詢數量會很大(> 100),那麼我會將它們分成幾個不同的類。
將腳本存儲在從應用中讀取的單獨文件中可能是可行的。如果腳本是SQL,那麼爲它們分配一個文件會使它們直接運行以進行調試。
如果你有大的查詢語句,你也可以定義視圖。
我認爲最簡單的是無論是從文件中讀取SQL,如果有很多,或使一堆準備好的陳述,只是不包裝它們。