当前位置: 首页>>代码示例>>Java>>正文


Java LargeObject.getInputStream方法代码示例

本文整理汇总了Java中org.postgresql.largeobject.LargeObject.getInputStream方法的典型用法代码示例。如果您正苦于以下问题:Java LargeObject.getInputStream方法的具体用法?Java LargeObject.getInputStream怎么用?Java LargeObject.getInputStream使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.postgresql.largeobject.LargeObject的用法示例。


在下文中一共展示了LargeObject.getInputStream方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getPostgreSqlnputStream

import org.postgresql.largeobject.LargeObject; //导入方法依赖的package包/类
/**
    * Extract the Large Object Input Stream from PostgreSQL
    * 
    * @param resultSet
    *            the Result Set to extract the blob from
    * @param columnIndex
    *            the index of column
    * @return the Large Object Input Stream from PostgreSQL
    * @throws SQLException
    */
   public static InputStream getPostgreSqlnputStream(ResultSet resultSet,
    int columnIndex) throws SQLException {
InputStream in;
Statement statement = resultSet.getStatement();
Connection conn = statement.getConnection();

// Get the Large Object Manager to perform operations with
LargeObjectManager lobj = ((org.postgresql.PGConnection) conn)
	.getLargeObjectAPI();
long oid = resultSet.getLong(columnIndex);

if (oid < 1) {
    return null;
}

LargeObject obj = lobj.open(oid, LargeObjectManager.READ);

in = obj.getInputStream();
return in;
   }
 
开发者ID:kawansoft,项目名称:aceql-http,代码行数:31,代码来源:PostgreSqlUtil.java

示例2: doReadPostgres

import org.postgresql.largeobject.LargeObject; //导入方法依赖的package包/类
/**
 * Postgres does not allow to read from the large object after the connection has been closed.
 */
private InputStream doReadPostgres(String id) {
    Handle h = dbi.open();
    try {
        h.getConnection().setAutoCommit(false);

        List<Map<String, Object>> res = h.select("SELECT data FROM icon_filestore WHERE id=?", id);

        Optional<Long> oid = res.stream()
            .map(row -> row.get("data"))
            .map(Long.class::cast)
            .findFirst();

        if (oid.isPresent()) {
            LargeObjectManager lobj = getPostgresConnection(h.getConnection()).getLargeObjectAPI();
            LargeObject obj = lobj.open(oid.get(), LargeObjectManager.READ);
            return new HandleCloserInputStream(h, obj.getInputStream());
        } else {
            h.close();
            return null;
        }

    } catch (SQLException e) {
        IOUtils.closeQuietly(h);
        throw IconDataAccessException.launderThrowable(e);
    }
}
 
开发者ID:syndesisio,项目名称:syndesis,代码行数:30,代码来源:SqlIconFileStore.java

示例3: doReadPostgres

import org.postgresql.largeobject.LargeObject; //导入方法依赖的package包/类
/**
 * Postgres does not allow to read from the large object after the connection has been closed.
 */
private InputStream doReadPostgres(String path) {
    Handle h = dbi.open();
    try {
        h.getConnection().setAutoCommit(false);

        List<Map<String, Object>> res = h.select("SELECT data FROM filestore WHERE path=?", path);

        Optional<Long> oid = res.stream()
            .map(row -> row.get("data"))
            .map(Long.class::cast)
            .findFirst();

        if (oid.isPresent()) {
            LargeObjectManager lobj = getPostgresConnection(h.getConnection()).getLargeObjectAPI();
            LargeObject obj = lobj.open(oid.get(), LargeObjectManager.READ);
            return new HandleCloserInputStream(h, obj.getInputStream());
        } else {
            h.close();
            return null;
        }

    } catch (SQLException e) {
        IOUtils.closeQuietly(h);
        throw ExtensionDataAccessException.launderThrowable(e);
    }
}
 
开发者ID:syndesisio,项目名称:syndesis,代码行数:30,代码来源:SqlExtensionFileStore.java

示例4: doReadPostgres

import org.postgresql.largeobject.LargeObject; //导入方法依赖的package包/类
/**
 * Postgres does not allow to read from the large object after the connection has been closed.
 */
private InputStream doReadPostgres(String path) {
    Handle h = dbi.open();
    try {
        h.getConnection().setAutoCommit(false);

        List<Map<String, Object>> res = h.select("SELECT data FROM filestore WHERE path=?", path);

        Optional<Long> oid = res.stream()
            .map(row -> row.get("data"))
            .map(Long.class::cast)
            .findFirst();

        if (oid.isPresent()) {
            LargeObjectManager lobj = getPostgresConnection(h.getConnection()).getLargeObjectAPI();
            LargeObject obj = lobj.open(oid.get(), LargeObjectManager.READ);
            return new HandleCloserInputStream(h, obj.getInputStream());
        } else {
            h.close();
            return null;
        }

    } catch (SQLException e) {
        IOUtils.closeQuietly(h);
        throw FileStoreException.launderThrowable(e);
    }
}
 
开发者ID:syndesisio,项目名称:syndesis-rest,代码行数:30,代码来源:SqlFileStore.java

示例5: getBinaryStream

import org.postgresql.largeobject.LargeObject; //导入方法依赖的package包/类
public synchronized InputStream getBinaryStream() throws SQLException
{
    checkFreed();
    LargeObject subLO = lo.copy();
    subLOs.add(subLO);
    subLO.seek(0, LargeObject.SEEK_SET);
    return subLO.getInputStream();
}
 
开发者ID:health-and-care-developer-network,项目名称:health-and-care-developer-network,代码行数:9,代码来源:AbstractJdbc2BlobClob.java


注:本文中的org.postgresql.largeobject.LargeObject.getInputStream方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。