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

📄 indataconvertutil.java

📁 羽量级数据持久层开发框架
💻 JAVA
字号:
package org.speedframework.convert;

//~--- JDK imports ------------------------------------------------------------

import java.io.ByteArrayInputStream;
import java.io.InputStreamReader;

import java.math.BigDecimal;

import java.sql.*;

/**
 * @author victorching
 */
public class InDataConvertUtil
 {

    /**
     * 方法描述信息,
     * 描述方法是做什么的,
     * 如何调用,最好给出调用代码示例。
     *
     * @param ps
     * @param index
     * @param obj
     * @param isUpdate
     *
     * @throws SQLException
     */
    public static void importData(PreparedStatement ps, int index, Object obj, boolean isUpdate) throws SQLException {
        if ((obj instanceof String) && (obj.toString().length() < 500)) {
            ps.setString(index, obj.toString());
        }

        if ((obj instanceof String) && (obj.toString().length() > 500)) {
            ps.setCharacterStream(index, new InputStreamReader(new ByteArrayInputStream(obj.toString().getBytes())),
                                  obj.toString().length());
        }

        if (obj instanceof Boolean) {
            ps.setBoolean(index, ((Boolean) obj).booleanValue());
        }

        if (obj instanceof Integer) {
            ps.setInt(index, ((Integer) obj).intValue());
        }

        if (obj instanceof Long) {
            ps.setLong(index, ((Long) obj).longValue());
        }

        if (obj instanceof Short) {
            ps.setShort(index, ((Short) obj).shortValue());
        }

        if (obj instanceof BigDecimal) {
            ps.setBigDecimal(index, (BigDecimal) obj);
        }

        if (obj instanceof Double) {
            ps.setDouble(index, ((Double) obj).doubleValue());
        }

        if (obj instanceof Float) {
            ps.setFloat(index, ((Float) obj).floatValue());
        }

        if (obj instanceof java.util.Date) {
            if (obj instanceof Timestamp) {
                ps.setTimestamp(index, ((Timestamp) obj));
            } else {
                ps.setDate(index, new java.sql.Date(((java.util.Date) obj).getTime()));
            }
        }

        if (obj instanceof java.sql.Date) {
            ps.setDate(index, (java.sql.Date) obj);
        }

        if (obj instanceof Byte) {
            ps.setByte(index, ((Byte) obj).byteValue());
        }

        if ((obj instanceof Blob) && isUpdate) {
            ps.setBlob(index, ((Blob) obj));
        }

        if ((obj instanceof Blob) &&!isUpdate) {
            ps.setBinaryStream(index, ((Blob) obj).getBinaryStream(), (int) ((Blob) obj).length());
        }

        if ((obj instanceof Clob) && isUpdate) {
            ps.setClob(index, ((Clob) obj));
        }

        if ((obj instanceof Clob) &&!isUpdate) {
            ps.setCharacterStream(index, ((Clob) obj).getCharacterStream(), (int) ((Clob) obj).length());
        }

        if (obj instanceof Time) {
            ps.setTime(index, ((Time) obj));
        }
    }
}

⌨️ 快捷键说明

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