【问题标题】:Getting return value in JSP在 JSP 中获取返回值
【发布时间】:2015-11-18 16:34:17
【问题描述】:

以下是在JSP 中从MySQL 数据库自动生成采购订单号的代码。我想返回“POno”字符串,但它显示错误,因为它超出了 if 条件。

我怎样才能得到这个字符串作为返回?

<%!
    public String autoPONo()throws SQLException{

        rs=pst.executeQuery();

        if(rs.next()){
            String po= rs.getString("max(PONo)");
            int intNo = Integer.parseInt(po);
            intNo+=1;

            String POno = Integer.toString(intNo);  
        }

           return POno; 
     }
%>

【问题讨论】:

  • 为什么要把PONo作为字符串转换成int,可以直接使用rs.getInt,这样可以减少Integer的解析。

标签: java mysql jsp


【解决方案1】:

声明循环的变量 otsido:

<%!
    public String autoPONo()throws SQLException{
               String POno = null;
                rs=pst.executeQuery();

                if(rs.next()){
                   String po= rs.getString("max(PONo)");
                   int intNo = Integer.parseInt(po);
                   intNo+=1;

                   POno = Integer.toString(intNo);  
                }

           return POno; 
        }
    }
%>

【讨论】:

    【解决方案2】:

    您必须在 if 之外声明 POno 或在 if 内部返回,以便 POno 可用于 return 语句。

        rs=pst.executeQuery();
    
         String POno = "";
            if(rs.next()) {
               String po= rs.getString("max(PONo)");
               int intNo = Integer.parseInt(po);
               intNo+=1;
                   POno = Integer.toString(intNo);  
            }
    
        return POno; 
    

        rs=pst.executeQuery();
    
        if(rs.next()) {
             String po= rs.getString("max(PONo)");
             int intNo = Integer.parseInt(po);
             intNo+=1;
    
             String POno = Integer.toString(intNo); 
             return POno; 
         }
    
        return ""; 
    

    【讨论】:

      猜你喜欢
      • 2014-03-07
      • 2013-03-08
      • 1970-01-01
      • 1970-01-01
      • 2013-11-15
      • 2012-12-12
      • 1970-01-01
      • 2019-01-20
      • 2015-05-11
      相关资源
      最近更新 更多