<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # 19.1.5\. 使用批量抓取(Using batch fetching) Hibernate可以充分有效的使用批量抓取,也就是說,如果僅一個訪問代理(或集合),那么Hibernate將不載入其他未實例化的代理。 批量抓取是延遲查詢抓取的優化方案,你可以在兩種批量抓取方案之間進行選擇:在類級別和集合級別。 類/實體級別的批量抓取很容易理解。假設你在運行時將需要面對下面的問題:你在一個`Session`中載入了25個 `Cat`實例,每個`Cat`實例都擁有一個引用成員`owner`, 其指向`Person`,而`Person`類是代理,同時`lazy="true"`。 如果你必須遍歷整個cats集合,對每個元素調用`getOwner()`方法,Hibernate將會默認的執行25次`SELECT`查詢, 得到其owner的代理對象。這時,你可以通過在映射文件的`Person`屬性,顯式聲明`batch-size`,改變其行為: ``` <class name="Person" batch-size="10">...</class> ``` 隨之,Hibernate將只需要執行三次查詢,分別為10、10、 5。 你也可以在集合級別定義批量抓取。例如,如果每個`Person`都擁有一個延遲載入的`Cats`集合, 現在,`Sesssion`中載入了10個person對象,遍歷person集合將會引起10次`SELECT`查詢, 每次查詢都會調用`getCats()`方法。如果你在`Person`的映射定義部分,允許對`cats`批量抓取, 那么,Hibernate將可以預先抓取整個集合。請看例子: ``` <class name="Person"> <set name="cats" batch-size="3"> ... </set> </class> ``` 如果整個的`batch-size`是3(筆誤?),那么Hibernate將會分四次執行`SELECT`查詢, 按照3、3、3、1的大小分別載入數據。這里的每次載入的數據量還具體依賴于當前`Session`中未實例化集合的個數。 如果你的模型中有嵌套的樹狀結構,例如典型的帳單-原料結構(bill-of-materials pattern),集合的批量抓取是非常有用的。 (盡管在更多情況下對樹進行讀取時,_嵌套集合(nested set)_或_原料路徑(materialized path)_(××) 是更好的解決方法。)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看