這將是我的第一個多線程應用程序,如果它可以像這樣開發的話。所以我需要一些幫助入門。在Java中開發多線程應用程序
我現在有一個很完善
- 從源數據庫獲取數據,並將其轉換爲對象以下Java程序(POJO)中
- 從目標數據庫獲取數據,並將其轉換爲對象( POJO)中。
- 比較源對象和目標對象,如果存在差異,則使用來自源數據庫的信息更新目標數據庫。
現在我的需求發生了變化,我需要使用3個不同的目標數據庫(TargetDB1,TargetDB2,TargetDB3)。每個人都有不同的連接信息。
我的問題是,我們能否讓這個多線程應用程序,其中在
線程1將得到
線程2將得到TargetDB1對象,比較源對象(從線程1獲得)源對象並更新TargetDB1在與源對象不同的情況下
線程3將得到TargetDB2對象,比較源對象(從線程1中獲得)和在與所述源對象不同的情況下更新所述TargetDB2
線程4將獲得TargetDB2對象,與源對象(從線程1獲得)進行比較,並在源對象不同時更新TargetDB2
如果這可以作爲多線程應用程序開發,那麼怎麼去關於它。
您確定要通過應用程序層執行此操作嗎?對於大容量,使用數據庫實用程序會更快。即使簡單地使用一些SQL語句和.csv也可能會更快。 – 2012-03-06 16:27:56
我不確定這是否是讓dbs同步的最佳方式。如果您的DB1是主數據庫,那麼最好在我看來爲其他數據庫編寫升級腳本。 – FourOfAKind 2012-03-06 16:30:50
我不會使用多個線程,但我會關心一致性。例如比如說DB1,2和3是不同的。一次只比較兩個數據庫,您需要確保所有三個數據庫都以相同的值結束。 – 2012-03-06 16:45:25