簡體   English   中英

JDBCRowSet的可序列化快照?

[英]Serializable snapshot of JDBCRowSet?

JdbcRowSet接口是一個連接的RowSet ,與CachedRowSet不同,它不實現Serializable
如果您創建一個同時實現JdbcRowSetSerializable的類會發生什么? 它會在序列化時有效地發送JdbcRowSet的快照,還是無法使用此類?

(這是我自己的理解,而不是任何應用程序;我知道CachedRowSet實現可能是達到相同結果的正確途徑。)

由於JDBCRowSet是一個連接的體系結構,因此不希望對類進行序列化,因為它借助於jdbc驅動程序來維護與數據庫的連接。因此,最好與CachedRowSet一起使用(在序列化的情況下),而CachedRowSet則是斷開連接的體系結構。

這是這兩種RowSet之間的區別: 1)JdbcRowSet: JdbcRowSet類提供javax.sql.RowSet接口的基本實現,該接口將ResultSet對象轉換為JavaBean並抽象化使用ResultSet對象的細節。 您可以使用此對象簡化連接步驟,或為不支持這些功能的驅動程序提供可滾動和可更新的游標。 但是,JdbcRowSet對象只能在連接模式下運行,因此需要存在JDBC驅動程序。

2)Cached RowSet: CachedRowSet類提供與JdbcRowSet類相同的功能,但有一個重要區別:CachedRowSet對象可以在斷開連接的環境中運行。 結果,它可以在沒有JDBC驅動程序的情況下運行。 用數據填充CachedRowSet對象后,您可以通過網絡將其發送給瘦客戶端,將其提供給便攜式計算機上的銷售專業人員,或對其進行序列化以進行數據歸檔。 CachedRowSet對象的優點是向其發送對象的客戶端不需要JDBC驅動程序。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM