Session保存用户名
1.构造登录界面
用户名:
密 码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
<! DOCTYPE html>
< html >
< head >
< meta charset="UTF-8">
< title >Session保存用户名</ title >
</ head >
< body >
< form action="doS3" method= "post">
用户名:< input type="text" name="name"/>< br />
密 码:< input type="password" name = "pwd">< br />
< input type="submit">
</ form >
</ body >
</ html >
|
2.获取Session并将用户名保存到Session域对象中
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
package com.oaec.session;
import java.io.IOException;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class servletDemo3 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
req.setCharacterEncoding( "UTF-8" );
resp.setContentType( "text/html;charset=UTF-8" );
// req.getAttribute(arg0)
String name = req.getParameter( "name" );
String pwd = req.getParameter( "pwd" );
if ( "高圆圆" .equals(name) && "123" .equals(pwd)) {
// 将用户名保存在session中
// 1.获得session
HttpSession session = req.getSession();
// 2.将用户名保存在session中
session.setAttribute( "uname" , name);
resp.sendRedirect( "doS4" );
} else {
resp.sendRedirect( "index.html" );
}
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
} |
3.从Session中取出数据 并对页面进行保护 没有登录通过URL访问 直接重定向到登录界面 即主页
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
package com.oaec.session;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class servletDemo4 extends HttpServlet{
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
req.setCharacterEncoding( "UTF-8" );
resp.setContentType( "text/html;charset=UTF-8" );
//从session中取出数据
HttpSession session = req.getSession( false );
Object object = null ;
if (session != null && (object = session.getAttribute( "uname" ))!= null ) {
PrintWriter writer = resp.getWriter();
writer.write( "登录成功<br>" );
writer.write( "欢迎你" +object);
} else {
//没有登录过 直接重定向到主页
resp.sendRedirect( "index.html" );
}
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
} |