下面为JAVA代码:Connection conn = dbFunc.getConnection();
if( conn==null )
    throw new SQLException(0, "");
Object obj = null;//执行SQL语句,处理结果集rs
try
{
    st = conn.createStatement();     line:1337
    rs = st.executeQuery(strSQL);
    if (rs.next())
    {
        Class c = Class.forName(entity.getClass().getName());
        if (c == null)
            return null;
        obj = c.newInstance();        obj = JBeanClass.setPropertyValueFromRecordSet(obj,rs);
    }
}
catch (SQLException ex)
{
    // 日志   line:1352
    LogInit.runLog.log("queryByPk error: " + ex + ". \n(SQL: " +
                          strSQL + ")");  
}报的日志如下:
SQLExecutor.java:1352] [ ] [queryByPk error: java.sql.SQLException: Io exception: Broken pipe.堆栈信息:
at com.huawei.mms.portal.util.database.AutoSQLExecutor.queryByPK(AutoSQLExecutor.java:1337)
请各位帮忙看下是什么原因?谢谢!

解决方案 »

  1.   

    是不是SQL的问题 这个不是最原始的异常信息
      

  2.   

    你的Connection怎么没有贴出来啊!还有你那个st怎么声明的啊!貌似好多变量没看到啊!
      

  3.   

    是不是有很多Statement用完了没有关闭啊?
      

  4.   

    配置连接池更改oracle连接方式thin ,oci试试查看内存
      

  5.   

    你能把错误信息发全了么?
    用try{}catch(Exception e){
       e.printStackTrace();
    }
    得到就这一句?
      

  6.   

    Connection没有连接到指定的数据库,也没看见实例化oracle的驱动
      

  7.   

    com.huawei.mms.portal.util.database.AutoSQLExecutor.queryByPK能把这个类贴出来吗,你给的代码都不全我们怎么知道啊?
    至少把相关类贴上来吧!
      

  8.   

    你能把错误信息发全了么?
    用try{}catch(Exception e){
      e.printStackTrace();
    }
    得到就这一句?
      

  9.   


    我的理解和这位兄台看法一致。
    或许还有操纵数据库了也没有 commit