`

使用weblogic数据源读取CLOB字段问题

    博客分类:
  • java
 
阅读更多

今天写了一个通过weblogic数据源访问数据库应用,发现读取CLOB字段无法读取,查询网上资料,发现一遍文章。把代码复制一遍发现还是无法使用,稍微修改一下就通过了,附上代码

 

//转换CLOB为普通CLOB类型进行读取
      public String clobToString2(Object clob2)throws SQLException, IOException{
       log.info("classname:"+clob2.getClass().getName());
       try{
        //判断CLOB类型
        if ("oracle.sql.CLOB".equals(clob2.getClass().getName())){
         String rtn = "";
         oracle.sql.CLOB clob = (oracle.sql.CLOB)clob2;
         InputStream input = clob.getAsciiStream();
         int len = (int)clob.length();
         byte[] by = new byte[len];
         int i ;
         while(-1 != (i = input.read(by, 0, by.length))) {
         input.read(by, 0, i);
         }
         rtn = new String(by);
         rtn=clob.getSubString((long)1,(int)clob.length());

         return rtn;
        }else if ("weblogic.jdbc.wrapper.Clob_oracle_sql_CLOB".equals(clob2.getClass().getName())){
         //通过weblogic数据源访问时,需要把weblogic的CLOB转换为java.sql.Clob类型
         String rtn = "";
         Method method = clob2.getClass().getMethod("getVendorObj",new Class[]{});
//         log.info("11111111111111111111111");
         java.sql.Clob clob = (Clob) method.invoke(clob2); //修改后代码

         oracle.sql.CLOB clob = (oracle.sql.CLOB)method.invoke(in); 修改前代码
//         log.info("222222222222222222222222");
         InputStream input = clob.getAsciiStream();
         int len = (int)clob.length();
         byte[] by = new byte[len];
         int i ;
         while(-1 != (i = input.read(by, 0, by.length))) {
          input.read(by, 0, i);
         }
         rtn = new String(by);
         rtn=clob.getSubString((long)1,(int)clob.length());

         return rtn;
        }else{
         return null;
        }
       }catch(Exception e){
        log.info("convert to clob error:"+e.getLocalizedMessage());
        return null;
       }
      }

分享到:
评论

相关推荐

    weblogic.jdbc.wrapper.Clob_oracle_sql_CLOB 类型转换解决办法

    在使用 WebLogic 服务器进行应用程序开发时,尤其是在处理 Oracle 数据库中的 CLOB 类型数据时,开发者可能会遇到类型转换的问题。本文将详细介绍如何通过反射机制来解决 WebLogic 环境下 Oracle CLOB 类型转换成 `...

    weblogic数据源配置

    ### WebLogic 数据源配置详解 #### 一、新建数据源 **步骤1:登录WebLogic控制台** 在开始配置之前,首先需要登录到WebLogic Server的管理控制台。...通过遵循上述步骤,你可以顺利地完成WebLogic数据源的配置任务。

    spring获取weblogic jndi数据源的两种方式

    ### Spring 获取 WebLogic JNDI 数据源的两种方式 在Spring框架中,通过JNDI(Java Naming and Directory Interface)可以方便地访问WebLogic服务器中的数据源。这为应用程序提供了高度解耦的数据访问机制,使得...

    weblogic解决clob添加失败 classcastexception

    1. **数据源配置**:检查数据源配置,确保使用的JDBC驱动与数据库版本兼容,并且支持CLOB类型的操作。不正确的驱动配置可能导致无法正确处理CLOB对象。 2. **代码实现**:在将数据写入CLOB字段时,可能直接使用了...

    Weblogic JDBC 数据源配置和详细参数说明

    Weblogic JDBC 数据源配置和详细参数说明 一、JDBC 概述 JDBC(Java Database Connectivity)是 Java 语言中的一种标准数据库连接技术,几乎所有需要访问数据库的 J2EE 应用程序都直接或间接地使用了它。JDBC 提供...

    Weblogic 数据源配置,

    Weblogic数据源配置虽看似简单,实则需要细致入微的处理,尤其是与不同数据库的兼容性和性能优化方面。通过以上步骤,你可以成功在Weblogic 9.0环境中配置MySQL 5.1数据源,为构建稳定高效的应用奠定基础。记住,...

    weblogic数据源调用

    WebLogic数据源调用是Java应用在WebLogic服务器上与Oracle数据库交互的关键步骤。WebLogic Server作为一款流行的Java EE应用服务器,提供了强大的数据源管理功能,使得应用程序能够以透明、高效且可管理的方式连接到...

    使用weblogic管理数据源

    配置WebLogic数据源的步骤通常包括以下几个关键环节: 1. 登录WebLogic管理控制台:访问`http://hostname:port/console`,其中`hostname`是WebLogic服务器的IP地址,`port`是管理服务器的端口号,通常默认为7001。 ...

    JAVA对clob的操作

    出库操作可以使用ResultSet.getBlob()或ResultSet.getClob()方法获取BLOB或CLOB对象,然后使用InputStream或Reader对象将数据读取出来。 JAVA对Oracle中BLOB、CLOB类型字段的操作需要根据不同的环境和需求选择合适...

    weblogic数据源连接池

    总结起来,WebLogic数据源连接池是实现高效、稳定数据库连接的关键,通过合理的配置和管理,可以极大地提高系统的响应速度和资源利用率,同时降低数据库的压力。在实际操作中,根据应用的需求和环境,不断调整和优化...

    Weblogic配置数据源

    配置WebLogic数据源的步骤如下: 1. **启动WebLogic Server**: 首先,你需要通过访问`http://localhost:7001/console`来启动WebLogic Server控制台。这里的`localhost`代表本地主机,`7001`是默认的管理服务器端口...

    在weblogic上配置数据源.png

    这个是weblogic9.0+mysql5.1的环境下配置数据源详细步骤。 其实在tomcat,jboss,WebSphere等服务期中都提供了配置数据源的功能,大概的配置都很类似。

    weblogic 10.3 的部署以及配置数据源

    5. 部署应用:在应用部署中,关联已创建的数据源,以便应用在运行时能使用该数据源进行数据库操作。 **四、高级配置** 1. 安全性:配置WebLogic的安全性,包括用户、角色、权限、SSL加密等,以保护服务器和应用...

    weblogic连接oracle RAC数据源配置

    2. **创建数据源**:在WebLogic管理控制台中,选择“配置”->“数据源”,然后创建一个新的数据源。选择JDBC驱动类型,如"Oracle Thin",并填写相应的JNDI名称、URL、用户名和密码。 - URL格式通常是:`jdbc:...

    weblogic的数据源优化记录

    本文旨在通过对一个具体的案例——解决WebLogic数据源一段时间后不可用的问题——来进行深入的分析和优化策略的探讨。 #### 二、连接池属性配置详解 在开始具体分析之前,先简要介绍WebLogic数据源连接池的一些...

    weblogic多数据源创建.docx

    Weblogic 多数据源创建详解 在 Weblogic 中,创建多数据源可以实现负载均衡和故障转移,提高系统的可用性和性能。本文将详细介绍 Weblogic 多数据源的创建过程,并对每个步骤进行详细的解释。 创建单数据源 创建...

    weblogic9.1 web应用程序部署与数据源的配置

    在WebLogic Server 9.1版本中,部署Web应用程序和配置数据源是两个关键操作,对于构建和管理基于Java EE的分布式应用系统至关重要。本文将深入探讨这两个主题,旨在提供全面的理解和实践指导。 首先,让我们关注Web...

    Weblogic配置Oracle数据源

    WebLogic Server 是一款广泛应用的企业级应用服务器,它支持多种服务,包括配置和管理JDBC(Java Database Connectivity)数据源。JDBC数据源是WebLogic Server中用于管理数据库连接的重要组件,它提供了对数据库的...

    weblogic配置数据源

    ### WebLogic 配置数据源知识点...通过以上详细步骤和示例,可以了解到在 WebLogic 服务器中配置数据源的方法及其在 Java Web 应用程序中的具体使用方式。这对于实现应用程序与数据库之间高效稳定的通信具有重要意义。

    WebLogic部署数据源

    5. 部署数据源:保存配置后,数据源将被部署到WebLogic服务器,可以在应用中通过JNDI查找并使用这个数据源。 此外,WebLogic还支持数据源的动态配置,这在集群环境中尤其有用。通过动态数据源,你可以为不同的...

Global site tag (gtag.js) - Google Analytics