如何在Java Servlet中单击链接时调用方法

时间:2014-08-27 19:36:13

标签: java html tomcat servlets

我正在实现一个用Java编写的Web应用程序,用于Apache Tomcat服务器(6.0.4)。

我当前想要做的是在单击以下链接时调用方法。

response.getWriter().println("<a href=\"./NextPage\">Next</a>");

对于JavaScript,onClick有效,但似乎不适用于Java。

你有任何提示吗?

===更多细节===

我正在为Web应用程序实现Java servlet。

单击链接后,用户将转到下一个servlet。

在移动到下一个servlet之前(单击一个链接),程序应该调用一个方法,该方法将用户的一些输入值注册到数据库。

我不想使用JavaScript。

2 个答案:

答案 0 :(得分:0)

您必须创建一个servlet或使用struts框架或类似的东西。

如果你使用jsp,你可能可以调用另一个调用java函数的jsp页面。

<a href=\"./NextPage.jsp\">Next</a>

NextPage.jsp上:

<%
somejavafunction();
%>

答案 1 :(得分:0)

您必须按以下方式使用表单:

(我假设我们是从头开始)

一个。在Web-Inf下的web.xml文件中定义您的servlet:

<servlet>  
    <servlet-name>Login</servlet-name>
    <servlet-class>cs336.servlets.LoginServlet</servlet-class>
<servlet>
<servlet-mapping>
    <servlet-name>Login</servlet-name>
    <url-pattern>/Login</url-pattern>
</servlet-mapping>

B中。在.jsp页面中,您需要以某种方式指向此servlet的操作,您可以通过以下方式执行此操作:

<form class="LoginHeader" method="POST" action="Login">
    <span>
        <input type="text" name="user_name" placeholder="User Name / Email" required>
        <input type="password" name="password" placeholder="Password" required>
        <br>
        <span id="loginError"></span>
        <input type="submit" value="Log in" class="buttonWhite" id="loginButton"> <br>
        <input type="submit" id="forgotPassword" value="I forgot my password...">   
    </span>  
    <a id="createAccount" href="index.html">Register</a>
</form>

℃。在您的servlet中,您需要使用正确的方法处理此事件,在这种情况下:

protected void doPost(  HttpServletRequest request, HttpServletResponse response) throws ServletException, java.io.IOException { ... }

我可以用你给的小背景告诉你。差不多,你必须做一个POST来调用servlet,用servlet方法拦截它,做你必须做的事情,然后你可以:

response.sendRedirect(...)

我希望这会有所帮助。