景区网站登录模块共包括两个JSP页面,分别是登录页面login.jsp和管理主页面main.jsp,我们将在这节里完成这两个页面的开发工作。
登录页面login.jsp
登录页面login.jsp,如代码清单1-19所示。广州网站建设
代码清单1-19 login.jsp
- <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
- <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
- <html>
- <head>
- <title>景区网站登录</title>
- </head>
- <body>
- <c:if test="${!empty error}">
- <font color="red"><c:out value="${error}" /></font>
- </c:if>
- <form action="<c:url value="/ loginCheck.html "/>" method= "post">
- 用户名:
- <input type="text" name="userName">
- <br>
- 密 码:
- <input type="password" name="password">
- <br>
- <input type="submit" value="登录" />
- <input type="reset" value="重置" />
- </form>
- </body>
- </html>
login.jsp页面有两个用处,既作为登录页面又作为登录失败后的响应页面。所以在 处,使用JSTL标签对登录错误返回的信息进行处理。JSTL标签中引用了error变量,这个变量正是LoginController中返回的ModelAndView("login", "error", "用户名或密码错误。") 对象所声明的error参数。
l ogin.jsp的登录表单提交到/loginController.html,如 所示。<c:url value= "/loginController.html"/>的JSTL标签会在URL前自动加上应用程序部署根目录,假设应用部署在网站的viewspace目录下,<c:url/>标签将输出/viewspace/loginController.html。通过<c:url/>标签很好地解决了开发和应用部署目录不一致的问题。
由于login.jsp放置在WEB-INF/jsp目录下,无法直接通过URL进行调用,它由LoginController控制类中标注了@RequestMapping(value = "/login.html")的loginPage()进行转发,如代码清单1-15所示。
景区管理主页面main.jsp
登录成功的欢迎页面很简单,仅使用JSTL标签显示一条欢迎信息即可,如代码清单1-20所示。
代码清单1-20 main.jsp
- <%@ page language="java" contentType="text/html; charset=UTF-8"
- pageEncoding="UTF-8"%>
- <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>景区后台管理主页面</title>
- </head>
- <body>
- ${user.userName},欢迎您进入景区后台管理!
- </body>
- </html>
1处访问Session域中的user对象,显示用户名和积分信息。这样,我们就完成了实例所有的开发任务。



