一.案例描述
使用内置方法的set/getAttribute方法来获取、传递参数,完成模拟登陆过程。
二.业务流程图
1.建立一个新的 WEB 工程,再建立一个 userLogin.jsp、userReceive.jsp、loginSuccess.jsp和loginError.jsp。
2.程序源代码如下。
userLogin.jsp:
<%@ page language="java" pageEncoding="UTF-8"%>
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<form action="userReceive.jsp" method="post">
姓名: <input type="text" name="RdName"><br>
密码:<input type="password" name="RdPasswd"><br>
<input type="submit" value="提交">
</form>
</body>
</html>
userReceive.jsp:
<%@ page language="java" pageEncoding="UTF-8"%>
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<%
String Name = request.getParameter("RdName");
session.setAttribute("rdname", Name);
String Passwd = request.getParameter("RdPasswd");
if(Name.equals("admin") && Passwd.equals("123")){
%>
<jsp:forward page="loginSuccess.jsp"/>
<%
}else{
response.sendRedirect("loginError.jsp");
}
%>
</body>
</html>
loginSuccess.jsp:
<%@ page language="java" pageEncoding="UTF-8"%>
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<%
request.setCharacterEncoding("UTF-8");
String Name=(String)session.getAttribute("rdname");
%>
Welcome,<%=Name %><br>
Login successful!
</body>
</html>
loginError.jsp:
<%@ page language="java" pageEncoding="UTF-8"%>
<head>
<title>Insert title here</title>
</head>
<body>
<%
request.setCharacterEncoding("UTF-8");
String Name=(String)session.getAttribute("rdname");
%>
Sorry,<%=Name %><br>
Login failed!
</body>
</html>
四.运行结果
1.运行页面
2.登陆成功页面
3.登陆失败页面