Clob clob=null;
if(rs.next())
        {
           clob = rs.getClob(1);//ResultSet rs
           try{
              if(clob!=null)
              {
                 
                  int len=(int)clob.length();
                  char[] content=new char[len];
                  int success=clob.getCharacterStream().read(content);//读取clob内容
                   return new String(content,"GBK");//返回clob的内容
              }
          }//catch(SQLException e){}
          catch(IOException e){}
        }

解决方案 »

  1.   

    楼上的是在JavaBeans里的处理方法啊?
    EJB应该不是这可望而不可及处理的啊
      

  2.   

    我用byte[]实现Blob,Clob应该也可以
    CMP Ejb:    /**
         *
         */
        public abstract void setAppendix(byte[] appendix);
        /**
         * @ejb:persistent-field
         * @ejb:jdbc-type JAVA_OBJECT
         * @ejb:sql-type BLOB
         * @ejb:interface-method
         */
        public abstract byte[]  getAppendix();
      

  3.   

    to knight_qmh(辉) :
    测试没有成功
    平台:
    WIN2000 
    oracle8.1.7
    resin-ee-2.1.6保存到数据库中后,读出来的值不对!
      

  4.   

    1. In the bean class, declare the variable. 
    2. Edit the XML by declaring the dbms-column-type deployment descriptor in the weblogic-cmp-rdbms jar.xml file. 
    <field-map>
    <cmp-field>description</cmp-field>
    <dbms-column>product_description</dbms-column>
    <dbms_column-type>OracleClob</dbms-column-type></field-map>
      

  5.   

    to :windancery(Java的真实拥护者!) 能给一段代码的例子吗?
      

  6.   

    将CLOB字段map为java.lang.String类型,在修改weblogic-cmp-rdbms-jar.xml的对应内容就行了。
    xml文件的例子见上面,在EJB中的方法声明用setDescription(String s),不要用setDescription(Clob c).
      

  7.   

    http://expert.csdn.net/Expert/topic/1235/1235304.xml?temp=.751034看这个帖子。