本文並不討論應該采用何種事務處理方式
也許你聽說過
注意
首先是業務接口
public interface BookStoreManager{
public boolean buyBook(String bookId
}
接下來就是業務接口的實現類??業務對象
public class BookStoreManagerImpl implements BookStoreManager{
public boolean buyBook(String bookId)throws SystemException{
Connection conn=ConnectionManager
boolean b=false;
try{
conn
BookDAO bookDAO=DAOFactory
CustomerDAO customerDAO=DAOFactory
//嘗試從庫存中取書
if(BookDAO
BigDecimal price=BookDAO
//從客戶帳戶中扣除price*quantity的費用
b=
CustomerDAO
其他業務方法
conn
conn
}
}catch(SQLException e){
conn
con
e
throws new SystemException(e);
}
return b;
}
}
然後是業務代表工廠
public final class ManagerFactory {
public static BookStoreManager getBookStoreManager() {
return new BookStoreManagerImpl();
}
}
這樣的設計非常適合於DAO中的簡單活動
我們有更為優雅的設計來解決這類問題
首先
[
From:http://tw.wingwit.com/Article/program/Java/gj/201311/27765.html