亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? enhancedlazyresultloader.java

?? 本套系統采用了業(yè)界當前最為流行的beanAction組件
?? JAVA
字號:
/*
 *  Copyright 2004 Clinton Begin
 *
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 */
package com.ibatis.sqlmap.engine.mapping.result.loader;

import com.ibatis.common.beans.ClassInfo;

import com.ibatis.sqlmap.engine.impl.ExtendedSqlMapClient;
import com.ibatis.sqlmap.engine.type.DomTypeMarker;
import net.sf.cglib.proxy.Enhancer;
import net.sf.cglib.proxy.InvocationHandler;

import java.lang.reflect.Method;
import java.sql.SQLException;
import java.util.Collection;
import java.util.List;

/**
 * Class to lazily load results into objects (uses CGLib to improve performance)
 */
public class EnhancedLazyResultLoader {

  private static final Class[] INTERFACES = new Class[]{List.class};
  private Object loader;


  /**
   * Constructor for an enhanced lazy list loader
   *
   * @param client - the client that is creating the lazy list
   * @param statementName - the statement to be used to build the list
   * @param parameterObject - the parameter object to be used to build the list
   * @param targetType - the type we are putting data into
   */
  public EnhancedLazyResultLoader(ExtendedSqlMapClient client, String statementName, Object parameterObject, Class targetType) {
    loader = new EnhancedLazyResultLoaderImpl(client, statementName, parameterObject, targetType);
  }

  /**
   * Loads the result
   *
   * @return the results - a list or object
   * 
   * @throws SQLException if there is a problem
   */
  public Object loadResult() throws SQLException {
    return ((EnhancedLazyResultLoaderImpl) loader).loadResult();
  }


  private static class EnhancedLazyResultLoaderImpl implements InvocationHandler {


    protected ExtendedSqlMapClient client;
    protected String statementName;
    protected Object parameterObject;
    protected Class targetType;

    protected boolean loaded;
    protected Object resultObject;

    /**
     * Constructor for an enhanced lazy list loader implementation
     *
     * @param client - the client that is creating the lazy list
     * @param statementName - the statement to be used to build the list
     * @param parameterObject - the parameter object to be used to build the list
     * @param targetType - the type we are putting data into
     */
    public EnhancedLazyResultLoaderImpl(ExtendedSqlMapClient client, String statementName, Object parameterObject, Class targetType) {
      this.client = client;
      this.statementName = statementName;
      this.parameterObject = parameterObject;
      this.targetType = targetType;
    }

    /**
     * Loads the result
     *
     * @return the results - a list or object
     * 
     * @throws SQLException if there is a problem
     */
    public Object loadResult() throws SQLException {
      if (DomTypeMarker.class.isAssignableFrom(targetType)) {
        return ResultLoader.getResult(client, statementName, parameterObject, targetType);
      } else if (Collection.class.isAssignableFrom(targetType)) {
        return Enhancer.create(Object.class, INTERFACES, this);
      } else if (targetType.isArray() || ClassInfo.isKnownType(targetType)) {
        return ResultLoader.getResult(client, statementName, parameterObject, targetType);
      } else {
        return Enhancer.create(targetType, this);
      }
    }

    public Object invoke(Object o, Method method, Object[] objects) throws Throwable {
      if ("finalize".hashCode() == method.getName().hashCode()
          && "finalize".equals(method.getName())) {
        return null;
      } else {
        loadObject();
        if (resultObject != null) {
          try {
            return method.invoke(resultObject, objects);
          } catch (Throwable t) {
            throw ClassInfo.unwrapThrowable(t);
          }
        } else {
          return null;
        }
      }
    }

    private synchronized void loadObject() {
      if (!loaded) {
        try {
          loaded = true;
          resultObject = ResultLoader.getResult(client, statementName, parameterObject, targetType);
        } catch (SQLException e) {
          throw new RuntimeException("Error lazy loading result. Cause: " + e, e);
        }
      }
    }
  }


}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本一区二区电影| 日韩理论在线观看| 91视视频在线观看入口直接观看www| 久久国产综合精品| 精品午夜一区二区三区在线观看| 视频一区视频二区在线观看| 亚洲一区二区在线视频| 亚洲国产日韩一区二区| 日本免费新一区视频| 毛片不卡一区二区| 国产成人免费xxxxxxxx| 99国产精品久久久久久久久久| 成人网在线免费视频| 9久草视频在线视频精品| 色久优优欧美色久优优| 91精品视频网| 国产日产欧美精品一区二区三区| 日本一区二区三区国色天香 | 亚洲精品视频观看| 一区二区久久久久久| 青青草原综合久久大伊人精品优势| 青青草原综合久久大伊人精品 | 色久综合一二码| 欧美精选一区二区| 欧美高清一级片在线观看| 2023国产精品| 亚洲男女一区二区三区| 欧美aaaaa成人免费观看视频| 国内外精品视频| 日韩欧美精品三级| 久久久精品日韩欧美| 亚洲精品一卡二卡| 国产精品资源站在线| 91精品办公室少妇高潮对白| 亚洲精品一区在线观看| 中文字幕日韩av资源站| 美女在线视频一区| 欧美性猛片xxxx免费看久爱| 久久久久久久综合| 日韩在线卡一卡二| 99在线精品免费| 日韩丝袜情趣美女图片| 一区二区成人在线| 丁香一区二区三区| 狠狠久久亚洲欧美| 色婷婷av一区二区| 欧美成人一区二区三区| 中文字幕在线观看不卡| 老色鬼精品视频在线观看播放| av中文字幕不卡| 久久免费美女视频| 蜜臀精品一区二区三区在线观看 | 久久久夜色精品亚洲| 亚洲国产精品嫩草影院| av动漫一区二区| 久久久久久**毛片大全| 美女精品一区二区| 91视视频在线观看入口直接观看www | 91精品国产综合久久久久| 国产精品免费aⅴ片在线观看| 男女男精品网站| 欧美在线观看视频一区二区| 日本一区二区三区国色天香 | 一本色道综合亚洲| 国产精品久久综合| 成人蜜臀av电影| 国产日韩av一区| 国产成人综合在线观看| 精品国产不卡一区二区三区| 日韩激情一二三区| 欧美日本国产视频| 日日骚欧美日韩| 在线电影国产精品| 日本aⅴ免费视频一区二区三区| 欧美日韩在线播| 日韩电影网1区2区| 91精品欧美综合在线观看最新| 午夜伊人狠狠久久| 91精品国产色综合久久不卡电影 | 麻豆成人免费电影| 精品国产一区二区国模嫣然| 精品中文字幕一区二区小辣椒| 日韩精品一区二区三区中文精品| 美女脱光内衣内裤视频久久影院| 日韩欧美区一区二| 国产不卡免费视频| 自拍偷自拍亚洲精品播放| 91国产精品成人| 日韩国产在线观看一区| 欧美精品一区二区三区蜜桃视频| 国产在线不卡一区| 亚洲色图视频网站| 欧美久久久久久久久| 国模无码大尺度一区二区三区| 亚洲国产电影在线观看| 欧美三级电影精品| 精品一二线国产| 亚洲欧美色图小说| 日韩一区二区免费电影| 国产成人精品亚洲777人妖| 亚洲女与黑人做爰| 日韩一级黄色大片| 成人av在线一区二区| 午夜精品福利一区二区蜜股av| 欧美精品一区二区三区蜜臀| 色噜噜偷拍精品综合在线| 青青草伊人久久| 亚洲精品美腿丝袜| 日韩欧美123| 欧美影视一区在线| 国产高清视频一区| 五月婷婷久久丁香| 国产精品国产三级国产aⅴ原创| 欧美视频完全免费看| 国产jizzjizz一区二区| 亚洲成人精品影院| 亚洲天堂中文字幕| 久久人人超碰精品| 91精品福利在线一区二区三区| 国产乱一区二区| 美腿丝袜亚洲三区| 亚洲线精品一区二区三区八戒| 亚洲国产精品激情在线观看| 欧美一区二区三区日韩| 色综合天天综合在线视频| 国产乱子伦视频一区二区三区| 亚洲成人av资源| 国产精品护士白丝一区av| 2024国产精品| 精品国产免费人成在线观看| 欧美日韩高清在线播放| 欧美午夜一区二区三区| 91网站黄www| 成人精品视频网站| 国产大陆a不卡| 国产在线不卡一卡二卡三卡四卡| 琪琪一区二区三区| 日本女人一区二区三区| 亚洲成va人在线观看| 亚洲欧美日韩一区| 国产精品久久久一本精品 | 4hu四虎永久在线影院成人| 在线看不卡av| 欧美性大战久久久久久久蜜臀| 一本色道综合亚洲| 91香蕉视频污在线| 在线观看亚洲精品| 欧美专区日韩专区| 欧美日韩高清在线播放| 欧美一级在线视频| 日韩亚洲欧美成人一区| 成人18视频日本| 午夜精彩视频在线观看不卡| 欧美剧情电影在线观看完整版免费励志电影 | 欧美一区永久视频免费观看| 欧洲精品一区二区| 欧美日韩一区在线| 国产91精品免费| 成人的网站免费观看| av电影在线观看完整版一区二区| 91丨porny丨国产| 欧美亚洲综合久久| 欧美一区二区精品久久911| 日韩精品一区在线| 日本一区二区三级电影在线观看| 国产精品国产馆在线真实露脸| 亚洲欧美另类在线| 五月激情综合色| 韩国一区二区三区| 91麻豆6部合集magnet| 欧美偷拍一区二区| 日韩欧美三级在线| 国产精品久久久99| 丝袜国产日韩另类美女| 美女视频一区在线观看| 国产91高潮流白浆在线麻豆| 色欲综合视频天天天| 欧美一级二级三级乱码| 国产精品青草综合久久久久99| 亚洲欧美日韩一区二区三区在线观看| 亚洲一区二区av电影| 激情久久五月天| 91视视频在线观看入口直接观看www | 欧美人狂配大交3d怪物一区| 欧美mv日韩mv亚洲| 尤物在线观看一区| 国产在线视频一区二区| 色综合一个色综合亚洲| 欧美mv日韩mv国产| 一区二区三区中文字幕在线观看| 蜜芽一区二区三区| 99vv1com这只有精品| 欧美电影免费观看高清完整版在线| 亚洲国产电影在线观看| 免费看欧美女人艹b| 色综合一区二区三区| 久久精品人人做人人综合| 午夜成人在线视频| 一本大道av伊人久久综合| 国产亚洲女人久久久久毛片|