⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 weblogicdelegate.java

📁 Quartz is a full-featured, open source job scheduling system that can be integrated with, or used al
💻 JAVA
字号:
/*  * Copyright 2004-2005 OpenSymphony  *  * 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. *  *//* * Previously Copyright (c) 2001-2004 James House */package org.quartz.impl.jdbcjobstore;import java.io.IOException;import java.io.InputStream;import java.io.ObjectInputStream;import java.sql.Blob;import java.sql.ResultSet;import java.sql.SQLException;import org.apache.commons.logging.Log;/** * <p> * This is a driver delegate for the WebLogic JDBC driver. * </p> *  * @see org.quartz.impl.jdbcjobstore.oracle.weblogic.WebLogicOracleDelegate * @author <a href="mailto:jeff@binaryfeed.org">Jeffrey Wescott</a> */public class WebLogicDelegate extends StdJDBCDelegate {    /**     * <p>     * Create new WebLogicDelegate instance.     * </p>     *      * @param log     *          the logger to use during execution     * @param tablePrefix     *          the prefix of all table names     */    public WebLogicDelegate(Log log, String tablePrefix, String instanceId) {        super(log, tablePrefix, instanceId);    }    /**     * <p>     * Create new WebLogicDelegate instance.     * </p>     *      * @param log     *          the logger to use during execution     * @param tablePrefix     *          the prefix of all table names     * @param useProperties     *          use java.util.Properties for storage     */    public WebLogicDelegate(Log log, String tablePrefix, String instanceId,            Boolean useProperties) {        super(log, tablePrefix, instanceId, useProperties);    }    //---------------------------------------------------------------------------    // protected methods that can be overridden by subclasses    //---------------------------------------------------------------------------    /**     * <p>     * This method should be overridden by any delegate subclasses that need     * special handling for BLOBs. The default implementation uses standard     * JDBC <code>java.sql.Blob</code> operations.     * </p>     *      * @param rs     *          the result set, already queued to the correct row     * @param colName     *          the column name for the BLOB     * @return the deserialized Object from the ResultSet BLOB     * @throws ClassNotFoundException     *           if a class found during deserialization cannot be found     * @throws IOException     *           if deserialization causes an error     */    protected Object getObjectFromBlob(ResultSet rs, String colName)        throws ClassNotFoundException, IOException, SQLException {                Object obj = null;        Blob blobLocator = rs.getBlob(colName);        InputStream binaryInput = null;        try {            if (null != blobLocator && blobLocator.length() > 0) {                binaryInput = blobLocator.getBinaryStream();            }        } catch (Exception ignore) {        }        if (null != binaryInput) {            ObjectInputStream in = new ObjectInputStream(binaryInput);            try {                obj = in.readObject();            } finally {                in.close();            }        }        return obj;    }    protected Object getJobDetailFromBlob(ResultSet rs, String colName)        throws ClassNotFoundException, IOException, SQLException {                if (canUseProperties()) {            Blob blobLocator = rs.getBlob(colName);            InputStream binaryInput = null;            try {                if (null != blobLocator && blobLocator.length() > 0) {                    binaryInput = blobLocator.getBinaryStream();                }            } catch (Exception ignore) {            }            return binaryInput;        }        return getObjectFromBlob(rs, colName);    }}// EOF

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -