使用Html表单将参数传递给Java文件我无法在我的Tomcat服务器中运行。 谁可以一步一步地描述这个例子?我应该在哪里放.html文件和.java和。类文件。我附加了html和java文件。扩展名为.class的已编译文件我已经完成了!提前谢谢!
<html>
<head>
<title>New Page 1</title>
</head>
<body>
<h2>Login</h2>
<p>Please enter your username and password</p>
<form method="GET" action="/htmlform/LoginServlet">
<p> Username <input type="text" name="username" size="20"></p>
<p> Password <input type="text" name="password" size="20"></p>
<p><input type="submit" value="Submit" name="B1"></p>
</form>
<p> </p>
</body>
</html>
这是我的LoginServlet.java文件:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class LoginServlet extends HttpServlet{
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String name = request.getParameter("username");
String pass = request.getParameter("password");
out.println("<html>");
out.println("<body>");
out.println("Thanks Mr." + " " + name + " " + "for visiting roseindia<br>" );
out.println("Now you can see your password : " + " " + pass + "<br>");
out.println("</body></html>");
}
}
答案 0 :(得分:4)
HTML文件必须放在公共webcontent中,并且类文件必须放在符合类“/WEB-INF/classes
声明的正确文件夹结构中的package
中。另外,不要忘记在/WEB-INF/web.xml
中声明servlet。
对于HTML表单,您需要意识到URL中的前导斜杠/
会将您带到域根目录。因此,您的表单会有效地提交到http://localhost:8080/htmlform/LoginServlet。您需要确保webapp上下文路径确实命名为/htmlform
,并且Servlet在web.xml
中已映射到url-pattern
/LoginServlet
。
与此问题无关,Roseindia.net被认为是最糟糕的学习/示例来源。相对而言,那里的很多片段都被糟糕的做法弄得乱七八糟。只要你是新人,我建议忽略那个清单。
答案 1 :(得分:0)
我不确定我是否完全理解这个问题,但它似乎在询问将tomcat的java代码和html文件放在何处使用它们。这些资源通常一起打包成.war文件并部署到tomcat中。