2.2.4 部署HTML文件
在helloapp目录下加入index.htm文件,这个文件仅仅用来显示一串带链接的字符"Welcome to HelloApp", 它链接到login.jsp文件。以下是index.htm文件的代码:
<html>
<head>
<title>helloapp</title>
</head>
<body >
<p><font size="7">Welcome to HelloApp</font></p>
<p><a href="login.jsp
language=English">English version </a>
</body>
</html> |
访问index.htm的URL为 http://localhost:8080/helloapp/index.htm,该页面的显示结果如图2-3所示。
图2-3 index.htm2.2.5 部署JSP
接下来,创建两个JSP文件,其中一个是login.jsp(参见例程2-1),它显示登录页面,要求输入用户名和口令,这个页面链接到一个名为DispatcherServlet的Servlet。 还有一个JSP文件是hello.jsp(参见例程2-2),这个JSP被DispatcherServlet调用,显示Hello页面。JSP的语法将在第4章详细讨论,本节侧重于介绍JSP的发布过程。这两个JSP文件都应放在helloapp目录下。
例程2-1 login.jsp
<html>
<head>
<title>helloapp</title>
</head>
<body >
<br>
<form name="loginForm" method="post"
action="dispatcher">
<table>
<tr>
<td><div align="right">User Name:</div></td>
<td> <input type="text" name="username"></td>
</tr>
<tr>
<td><div align="right">Password:</div></td>
<td><input type="password" name="password"></td>
</tr>
<tr>
<td></td>
<td><input type="Submit"
name="Submit" value="Submit"></td>
</tr>
</table>
</form>
</body>
</html> |
例程2-2 hello.jsp
<html>
<head>
<title>helloapp</title>
</head>
<body>
<b>Welcome: <%= request.getAttribute("USER") %></b>
</body>
</html> |
login.jsp中生成了一个loginForm表单,它有两个字段:username和passoword。访问login.jsp的URL为http://localhost:8080/helloapp/login.jsp,它生成的页面如图2-4所示。
图2-4 login.jsp网页2.2.6 部署Servlet
下面,创建一个Servlet文件,名为DispatcherServlet.java(参见例程2-3),它调用HttpServletRequest对象的getParameter方法读取客户提交的loginForm表单数据,获取用户名和口令,然后将用户名和口令保存在HttpServletRequest对象的属性中,再把请求转发给hello.jsp。
例程2-3 DispatcherServlet.java
package mypack;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
public class DispatcherServlet
extends HttpServlet
{
private String target = "/hello.jsp";
public void init(ServletConfig config)
throws ServletException
{
super.init(config);
}
public void doGet
(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException
{
// If it is a get request
forward to doPost()
doPost(request, response);
}
public void doPost
(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException
{
// Get the username from the request
String username =
request.getParameter("username");
// Get the password from the request
String password =
request.getParameter("password");
// Add the user to the request
request.setAttribute
("USER", username);
request.setAttribute
("PASSWORD", password);
// Forward the request
to the target named
ServletContext context
= getServletContext();
System.out.println
("Redirecting to " target);
RequestDispatcher dispatcher =
context.getRequestDispatcher(target);
dispatcher.forward(request, response);
}
public void destroy()
{
}
}
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
|