将值从java传递给jsp或servlet

时间:2015-02-11 13:44:59

标签: java jsp servlets

我正在做一个项目。我的工作是从数据库中检索数据并显示它们。如果需要,发送到下一页进行进一步处理。我的问题是我从数据库获得了价值,我想用href发送另一个jsp或servlet。           我正在检索的价值是:

        <%=special.getString("id")%>

将其发送至:

      <a href="new.jsp?id=<%=special.getString("id")%>" class="action_button">Buy Now</a>

但是当发送此错误的数据时

error message is

是正确的吗?我该怎么做?什么是正确的方法。我很长时间都被击中了,请帮助我。

5 个答案:

答案 0 :(得分:1)

使用id周围的单引号代替双倍。

"new.jsp?id=<%=special.getString('id')%>"

答案 1 :(得分:0)

在双引号内使用单引号。 我正在尝试键入代码但无法输入。 现在它应该工作

答案 2 :(得分:0)

您需要先转义引号或使用单引号,以便双引号可以正常工作:

注意:未经测试。

<a href='new.jsp?id=<%=special.getString("id")%>' class="action_button">Buy Now</a>

答案 3 :(得分:0)

我在错误消息中看到它显示DOUBLE_WHITESPACE in QUERY。我建议你试试encoding你的网址。

  <% String id=java.net.URLEncoder.encode(special.getString("id") , "UTF-8");%>
  <a href='new.jsp?id=<%=id%>' class="action_button">Buy Now</a>

答案 4 :(得分:0)

如果您认真对待JSP开发沟渠小脚本(10年前已经不常用)并熟悉Java标准标记库和JSP表达式语言。

我不太确定&#39;特别&#39;就在这里,但是使用EL你的代码看起来如下所示:

<!-- special is an object with a method getId()-->
<a href="new.jsp?id=${special.id}" class="action_button">Buy Now</a>

<!-- special is an object with a method getString(String key) -->
<a href="new.jsp?id=${special.getString('id')}" class="action_button">Buy Now</a>

如果这不起作用,那么就没有关键的“特殊”的豆子。在任何范围内。

请注意,如果您在JSP中使用数据库,则应考虑重构以使用标准JSTL SQL标记。请参阅下面的示例:

http://www.tutorialspoint.com/jsp/jstl_sql_query_tag.htm

另见:

http://www.tutorialspoint.com/jsp/jsp_standard_tag_library.htm

http://beginnersbook.com/2013/11/jsp-expression-language-el/

*注意第二个使用你的应用程序的例子需要符合Servlet 3规范(因为在此之前传递mthod params在EL中是坚定的)。进一步了解:https://stackoverflow.com/a/6337222/1356423