利用EL和JSTL技术,改进用户登录页面(login.jsp),当用户信息验证成功则转到主页面(main,jsp)显示问候语,如“用户liming,你好!”,否则转回login.jsp,保留原来用户输入的用户名,并有提示信息:“用户名或密码错误,请重新输入”。
时间: 2023-12-08 13:03:05 浏览: 28
好的,我可以为您解答这个问题。首先,您需要确保您的项目中已经引入了 EL 和 JSTL 库。接下来,您可以按照以下步骤来改进用户登录页面:
1. 在 login.jsp 页面中,使用表单元素来获取用户输入的用户名和密码,并将其提交到服务器端进行验证。
2. 在服务器端,您可以编写一个 Servlet 或 JSP 页面来处理用户提交的数据,验证用户名和密码是否正确。如果验证成功,则将用户的用户名保存在 Session 中,并将页面重定向到 main.jsp 页面。
3. 在 main.jsp 页面中,您可以使用 EL 表达式来获取保存在 Session 中的用户名,并使用 JSTL 的 c:out 标签显示欢迎语句。
下面是一个示例代码,供您参考:
login.jsp:
```
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<form action="loginServlet" method="post">
<label for="username">Username:</label>
<input type="text" id="username" name="username" value="${param.username}">
<br>
<label for="password">Password:</label>
<input type="password" id="password" name="password">
<br>
<input type="submit" value="Login">
</form>
<c:if test="${not empty param.error}">
<p>用户名或密码错误,请重新输入。</p>
</c:if>
```
loginServlet.java:
```
@WebServlet("/loginServlet")
public class LoginServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String username = request.getParameter("username");
String password = request.getParameter("password");
// 验证用户名和密码是否正确,这里假设用户名为 "admin",密码为 "123456"
if ("admin".equals(username) && "123456".equals(password)) {
// 将用户名保存在 Session 中
HttpSession session = request.getSession();
session.setAttribute("username", username);
// 重定向到 main.jsp 页面
response.sendRedirect("main.jsp");
} else {
// 用户名或密码错误,重定向回 login.jsp 页面,并保留原来的用户名
response.sendRedirect("login.jsp?username=" + username + "&error=true");
}
}
}
```
main.jsp:
```
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<c:set var="username" value="${sessionScope.username}" />
<c:if test="${not empty username}">
<p>用户${username},你好!</p>
</c:if>
```
希望这个示例能够帮到您,如果您还有其他问题,请随时提出。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)