【问题标题】:Not able to retrieve value returned by parameterzied method in jsp page无法检索jsp页面中参数化方法返回的值
【发布时间】:2015-04-17 12:48:10
【问题描述】:

我必须将参数放在bean定义的方法中。参数是静态的。我在jsp页面中做了这个-

<%
String n= "p49_readback";
ref.getDbTable(n);
%>

通过这个,我在 java bean 方法中获得了价值,该方法是

public String getDbTable(String parameter)
        {
     String  tolerance =null;
      LinkedHashMap<String, String> map = new LinkedHashMap<String, String>();//Holds the beamline name and status  
      try
                { 
                  con = getConnection();
                  stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
                  String sql="select Tolerance from Reference.dbo.Set_range where Parameter_Name='"+parameter+"'";
                  System.out.println("sql "+sql);
                  stmt.executeQuery(sql);
                  rs = stmt.getResultSet();

                  while(rs.next()) 
                  {
                     tolerance= (rs.getString(1));
                     System.out.println("value of tolerance is "+tolerance);

                  }
                }
             catch( Exception e )
            {
                System.out.println("\nException in getDbTable "+e);
            }
            finally
            {
                closeConnection(stmt, rs, con);
            }
            return tolerance;

现在我想在 jsp 中调用此方法并将其值存储到变量中。但我无法在 jsp 页面中检索或调用此方法。 我试过了

  <c:set value="${ref.getDbTable(param.p49_readback)}" var="db"></c:set>

但这是一种错误的方法,我没有得到该方法返回的值。如何做到这一点?

【问题讨论】:

  • 我个人建议不要在 JSP 中做任何逻辑(例如连接到数据库),除了显示内容。您使用的是纯 JSP 还是 Spring MVC 等框架?
  • @Bret,我使用的是palin jsp,没有框架。我没有通过Jsp连接数据库。我需要在JSP中调用这个getDbTable(),我无法做到。跨度>

标签: java jsp parameter-passing


【解决方案1】:

如果您使用的是纯 JSP,则可以这样做...

<%
    String n= "p49_readback";
    String reference = ref.getDbTable(n);
%>

现在你想在任何地方使用它,只要做......

<%=reference%>

你甚至可以...

<%
    String n= "p49_readback";
    String reference = ref.getDbTable(n);
%>
<c:set var="reference" value="<%=reference%>"/>

【讨论】:

  • 我想通过下面的jsp代码比较grtDbtable(n)返回的值。是这样吗?
  • 但是我不能在${}中写。那该怎么办呢?
  • @tiddirastogi 如果您使用过上面提到的“c:set”结构,我认为您应该可以将其称为 ${reference}(我已经有一段时间没有做任何 JSP工作...)
猜你喜欢
相关资源
最近更新 更多
热门标签