Java JSP-如何创建从一个JSP页面到另一个JSP页面的链接

Java JSP-如何创建从一个JSP页面到另一个JSP页面的链接,java,html,jsp,Java,Html,Jsp,我是JSP的新手。我知道这是一个基本问题。但我做不到。我想要的是在这个jsp页面中创建一个链接。但是,其他页面将根据登录情况而有所不同。如果正确,则必须显示指向correct.jsp的链接;如果登录不正确,则必须显示指向login.jsp的链接 <% String str = ""; String userid = request.getParameter("usr"); session.putValue("userid", userid); String

我是JSP的新手。我知道这是一个基本问题。但我做不到。我想要的是在这个jsp页面中创建一个链接。但是,其他页面将根据登录情况而有所不同。如果正确,则必须显示指向correct.jsp的链接;如果登录不正确,则必须显示指向login.jsp的链接

<%
    String str = "";
    String userid = request.getParameter("usr");
    session.putValue("userid", userid);
    String pwd = request.getParameter("pwd");
    Class.forName("com.mysql.jdbc.Driver");
    java.sql.Connection con = DriverManager.getConnection(
            "jdbc:mysql://localhost:3306/pr", "root", "xxx");
    Statement st = con.createStatement();
    ResultSet rs = st
            .executeQuery("select * from a where name='"+ userid + "'");
    if (rs.next()) {
        if (rs.getString(2).equals(pwd)) {
            out.println("welcome " + userid);
            str = "correct.jsp";
        } else {
            out.println("Invalid password try again");
            str = "login.jsp";
        }
    }
%>

<a href=str> <% str; &> </a>

但是,当我这样做时,会给出“插入”AssignmentOperator表达式“完成表达式”的错误

谢谢,你是说

<a href="<%=str%>"> the_link </a>

您可以使用

正如您所说,我已经对其进行了编辑。

在这种情况下,为了输出字符串str,您可以使用以下表达式。因此,
应该这样做


<%
String str = "";
String userid = request.getParameter("usr");
session.putValue("userid", userid);
String pwd = request.getParameter("pwd");
Class.forName("com.mysql.jdbc.Driver");
java.sql.Connection con = DriverManager.getConnection(
        "jdbc:mysql://localhost:3306/pr", "root", "xxx");
Statement st = con.createStatement();
ResultSet rs = st
        .executeQuery("select * from a where name='"+ userid + "'");
if (rs.next()) {
    if (rs.getString(2).equals(pwd)) {
        out.println("welcome " + userid);
       // str = "correct.jsp";  
   %>
       <jsp:forward page="correct.jsp"></jsp:forward>
    <%
    } else {
        out.println("Invalid password try again");
       // str = "login.jsp"; 
   %>

       <jsp:forward page="login.jsp"></jsp:forward>
    <%
    }
}
%>

这似乎是使用jsp:forward标记的标准方法。

great-thx:)实际上我想要的是正确的,但页面名称取决于str,所以它会改变。我无法将其设置为静态。“语法错误,插入”;“要完成语句”和“语法错误,请插入“AssignmentOperator表达式”以完成赋值”错误出现在第一个“转发”中。还有一些其他的,我已经编辑了代码,我犯了一个错误——jsp标记在jsp中不是作为java代码编写的,因为它们是html标记!!伟大的您应该使用这样的API来创建简单有效的代码:)