主鍵批處理器模式及序列化實體模式(J2EE design pattern摘記及感想6)

主鍵批生成器模式:

從數據庫序列中獲取一個值(基數)來生成一批唯一的數字ID。這個基數在每次獲取時,都是不同的。

獲取基數方法:在Oracle中:Statement.executeQuery("SELECT SEQ_PK.NEXTVAL FROM DUAL")

假設我們的一批的大小爲10,第一次得到基數爲1,則第一批的ID是從1*10到1*10+10-1即10到19.下次得ID,當還未超過19時,就不用重新得到基數。顯然,對於不同的基數,它們產生的序列是不會重複的。

序列化實體模式

表的結構變成了這樣,有一個主鍵,然後OBJECT_DATA存儲二進制代碼,這個二進制代碼通過ObjectInputStream.readObject可以建立對象。寫入該值用相應的ObjectOutputStream.writeObject(套接一個ByteArrayOutputStream),先把值寫入它,然後ps.setBytes(2,baos.toByteArray()),寫入到SQL更新參數中。

 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章