05-信息管理系统--主页面显示当前用户&实现退出功能实现

首先在账号密码正确时进入主页面,在UserServlet类中加入:

package com.lzy.servlet;


import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.log4j.Logger;

import com.lzy.pojo.User;
import com.lzy.service.UserService;
import com.lzy.service.imp.UserServiceImpl;

public class UserServlet extends HttpServlet {
	//声明日志对象
	Logger logger=Logger.getLogger(UserServlet.class);
	
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp)
		throws ServletException, IOException {
	//设置请求编码格式
	req.setCharacterEncoding("utf-8");
	//设置响应编码格式
	resp.setCharacterEncoding("text/html;charset=utf-8");
	//获取操作符
	String oper=req.getParameter("oper");
	if("login".equals(oper)){
		//响应登陆操作
		checkUserLogin(req,resp);
	}else if("reg".equals(oper)){
		//响应注册操作
	}else{ 
		logger.debug("响应错误"+oper);
	}	
}

private void checkUserLogin(HttpServletRequest req, HttpServletResponse resp) throws IOException {
	//获取请求信息
	String uname=req.getParameter("uname");
	String pwd=req.getParameter("pwd");
	//处理请求信息
	        //校验
	         UserService us=new UserServiceImpl();
	        User u=us.checkUserLoginService(uname, pwd);
	        if(u!=null){
	        	//重定向
	        	resp.sendRedirect("/ma/main/main.jsp");
	        }
	         
	
	
}
}

48-51行代码,当账号密码正确时,进入main.jsp
在WebRoot文件下创建main文件分别创建main.jsp footer.jsp left.jsp right.jsp top.jsp四个jsp文件,在把
在这里插入图片描述
文件中的五个html内容分别复制到对应的jsp文件中(这里的index.html复制到right.jsp中)
其中main.html文件中的代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>信息管理系统界面</title>
</head>
<frameset rows="88,*,31" cols="*" frameborder="no" border="0" framespacing="0">
  <frame src="top.html" name="topFrame" scrolling="No" noresize="noresize" id="topFrame" title="topFrame" />
  <frameset cols="187,*" frameborder="no" border="0" framespacing="0">
    <frame src="left.html" name="leftFrame" scrolling="No" noresize="noresize" id="leftFrame" title="leftFrame" />
    <frame src="index.html" name="rightFrame" id="rightFrame" title="rightFrame" />
  </frameset>
  <frame src="footer.html" name="bottomFrame" scrolling="No" noresize="noresize" id="bottomFrame" title="bottomFrame" />
</frameset>
<noframes><body>
</body></noframes>
</html>

要把第八行的top.html改为main/top.jsp
第10行的left.html改为main/left.jsp
第11行的index.html改为main/right.jsp
第13行的footer.html改为main/footer.jsp.
改后的jsp代码如下:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<base href="<%=basePath%>">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>信息管理系统界面</title>
</head>
<frameset rows="88,*,31" cols="*" frameborder="no" border="0" framespacing="0">
  <frame src="main/top.jsp" name="topFrame" scrolling="No" noresize="noresize" id="topFrame" title="topFrame" />
  <frameset cols="187,*" frameborder="no" border="0" framespacing="0">
    <frame src="main/left.jsp" name="leftFrame" scrolling="No" noresize="noresize" id="leftFrame" title="leftFrame" />
    <frame src="main/right.jsp" name="rightFrame" id="rightFrame" title="rightFrame" />
  </frameset>
  <frame src="main/footer.jsp" name="bottomFrame" scrolling="No" noresize="noresize" id="bottomFrame" title="bottomFrame" />
</frameset>
<noframes><body>
</body>
</noframes>
</html>

footer.jsp代码

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<base href="<%=basePath%>">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<link href="css/style.css" rel="stylesheet" type="text/css" />

</head>

<body>
	<div class="footer">
    <span>仅供学习交流,请勿用于任何商业用途</span>
    <i>版权所有 2014 uimaker.com</i>    
    </div>    
</body>
</html>


left.jsp代码

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<base href="<%=basePath%>">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<link href="css/style.css" rel="stylesheet" type="text/css" />
<script language="JavaScript" src="js/jquery.js"></script>

<script type="text/javascript">
$(function(){	
	//导航切换
	$(".menuson .header").click(function(){
		var $parent = $(this).parent();
		$(".menuson>li.active").not($parent).removeClass("active open").find('.sub-menus').hide();
		
		$parent.addClass("active");
		if(!!$(this).next('.sub-menus').size()){
			if($parent.hasClass("open")){
				$parent.removeClass("open").find('.sub-menus').hide();
			}else{
				$parent.addClass("open").find('.sub-menus').show();	
			}
			
			
		}
	});
	
	// 三级菜单点击
	$('.sub-menus li').click(function(e) {
        $(".sub-menus li.active").removeClass("active")
		$(this).addClass("active");
    });
	
	$('.title').click(function(){
		var $ul = $(this).next('ul');
		$('dd').find('.menuson').slideUp();
		if($ul.is(':visible')){
			$(this).next('.menuson').slideUp();
		}else{
			$(this).next('.menuson').slideDown();
		}
	});
})	
</script>


</head>

<body style="background:#fff3e1;">
	<div class="lefttop"><span></span>通讯录</div>
    
    <dl class="leftmenu">
        
    <dd>
    <div class="title">
    <span><img src="images/leftico01.png" /></span>管理信息
    </div>
    	<ul class="menuson">
        
        <li>
            <div class="header">
            <cite></cite>
            <a href="index.html" target="rightFrame">首页模版</a>
            <i></i>
            </div>
            <ul class="sub-menus">
            <li><a href="javascript:;">文件管理</a></li>
            <li><a href="javascript:;">模型信息配置</a></li>
            <li><a href="javascript:;">基本内容</a></li>
            <li><a href="javascript:;">自定义</a></li>
            </ul>
        </li>
        
        <li>
            <div class="header">
            <cite></cite>
            <a href="right.html" target="rightFrame">数据列表</a>
            <i></i>
            </div>                
            <ul class="sub-menus">
            <li><a href="javascript:;">文件数据</a></li>
            <li><a href="javascript:;">学生数据列表</a></li>
            <li><a href="javascript:;">我的数据列表</a></li>
            <li><a href="javascript:;">自定义</a></li>
            </ul>
        </li>
        
        <li class="active"><cite></cite><a href="right.html" target="rightFrame">数据列表</a><i></i></li>
        <li><cite></cite><a href="imgtable.html" target="rightFrame">图片数据表</a><i></i></li>
        <li><cite></cite><a href="form.html" target="rightFrame">添加编辑</a><i></i></li>
        <li><cite></cite><a href="imglist.html" target="rightFrame">图片列表</a><i></i></li>
        <li><cite></cite><a href="imglist1.html" target="rightFrame">自定义</a><i></i></li>
        <li><cite></cite><a href="tools.html" target="rightFrame">常用工具</a><i></i></li>
        <li><cite></cite><a href="filelist.html" target="rightFrame">信息管理</a><i></i></li>
        <li><cite></cite><a href="tab.html" target="rightFrame">Tab页</a><i></i></li>
        <li><cite></cite><a href="error.html" target="rightFrame">404页面</a><i></i></li>
        </ul>    
    </dd>
        
    
    <dd>
    <div class="title">
    <span><img src="images/leftico02.png" /></span>其他设置
    </div>
    <ul class="menuson">
        <li><cite></cite><a href="flow.html" target="rightFrame">流程图</a><i></i></li>
        <li><cite></cite><a href="project.html" target="rightFrame">项目申报</a><i></i></li>
        <li><cite></cite><a href="search.html" target="rightFrame">档案列表显示</a><i></i></li>
        <li><cite></cite><a href="tech.html" target="rightFrame">技术支持</a><i></i></li>
        </ul>     
    </dd> 
    
    
    <dd><div class="title"><span><img src="images/leftico03.png" /></span>编辑器</div>
    <ul class="menuson">
        <li><cite></cite><a href="#">自定义</a><i></i></li>
        <li><cite></cite><a href="#">常用资料</a><i></i></li>
        <li><cite></cite><a href="#">信息列表</a><i></i></li>
        <li><cite></cite><a href="#">其他</a><i></i></li>
    </ul>    
    </dd>  
    
    
    <dd><div class="title"><span><img src="images/leftico04.png" /></span>日期管理</div>
    <ul class="menuson">
        <li><cite></cite><a href="#">自定义</a><i></i></li>
        <li><cite></cite><a href="#">常用资料</a><i></i></li>
        <li><cite></cite><a href="#">信息列表</a><i></i></li>
        <li><cite></cite><a href="#">其他</a><i></i></li>
    </ul>
    
    </dd>   
    
    </dl>
    
</body>
</html>

right.jsp代码如下

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<base href="<%=basePath%>">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<link href="css/style.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="js/jquery.js"></script>

</head>


<body>

	<div class="place">
    <span>位置:</span>
    <ul class="placeul">
    <li><a href="#">首页</a></li>
    </ul>
    </div>
    
    <div class="mainindex">
    
    
    <div class="welinfo">
    <span><img src="images/sun.png" alt="天气" /></span>
    <b>Admin早上好,欢迎使用信息管理系统</b>(admin@uimaker.com)
    <a href="#">帐号设置</a>
    </div>
    
    <div class="welinfo">
    <span><img src="images/time.png" alt="时间" /></span>
    <i>您上次登录的时间:2013-10-09 15:22</i> (不是您登录的?<a href="#">请点这里</a></div>
    
    <div class="xline"></div>
    
    <ul class="iconlist">
    
    <li><img src="images/ico01.png" /><p><a href="#">管理设置</a></p></li>
    <li><img src="images/ico02.png" /><p><a href="#">发布文章</a></p></li>
    <li><img src="images/ico03.png" /><p><a href="#">数据统计</a></p></li>
    <li><img src="images/ico04.png" /><p><a href="#">文件上传</a></p></li>
    <li><img src="images/ico05.png" /><p><a href="#">目录管理</a></p></li>
    <li><img src="images/ico06.png" /><p><a href="#">查询</a></p></li> 
            
    </ul>
    
    <div class="ibox"><a class="ibtn"><img src="images/iadd.png" />添加新的快捷功能</a></div>
    
    <div class="xline"></div>
    <div class="box"></div>
    
    <div class="welinfo">
    <span><img src="images/dp.png" alt="提醒" /></span>
    <b>Uimaker信息管理系统使用指南</b>
    </div>
    
    <ul class="infolist">
    <li><span>您可以快速进行文章发布管理操作</span><a class="ibtn">发布或管理文章</a></li>
    <li><span>您可以快速发布产品</span><a class="ibtn">发布或管理产品</a></li>
    <li><span>您可以进行密码修改、账户设置等操作</span><a class="ibtn">账户管理</a></li>
    </ul>
    
    <div class="xline"></div>
    
    <div class="uimakerinfo"><b>查看Uimaker网站使用指南,您可以了解到多种风格的B/S后台管理界面,软件界面设计,图标设计,手机界面等相关信息</b>(<a href="http://www.uimaker.com" target="_blank">www.uimaker.com</a>)</div>
    
    <ul class="umlist">
    <li><a href="#">如何发布文章</a></li>
    <li><a href="#">如何访问网站</a></li>
    <li><a href="#">如何管理广告</a></li>
    <li><a href="#">后台用户设置(权限)</a></li>
    <li><a href="#">系统设置</a></li>
    </ul>
   
    </div>
</body>
</html>
 

top.jsp代码如下:

<%@ page language="java" import="java.util.*,com.lzy.pojo.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<base href="<%=basePath%>">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<link href="css/style.css" rel="stylesheet" type="text/css" />
<script language="JavaScript" src="js/jquery.js"></script>
<script type="text/javascript">
$(function(){	
	//顶部导航切换
	$(".nav li a").click(function(){
		$(".nav li a.selected").removeClass("selected")
		$(this).addClass("selected");
	})	
})	
</script>


</head>

<body style="background:url(images/topbg.gif) repeat-x;">

    <div class="topleft">
    <a href="main.html" target="_parent"><img src="images/logo.png" title="系统首页" /></a>
    </div>
        
    <ul class="nav">
    <li><a href="default.html" target="rightFrame" class="selected"><img src="images/icon01.png" title="工作台" /><h2>工作台</h2></a></li>
    <li><a href="imgtable.html" target="rightFrame"><img src="images/icon02.png" title="模型管理" /><h2>模型管理</h2></a></li>
    <li><a href="imglist.html"  target="rightFrame"><img src="images/icon03.png" title="模块设计" /><h2>模块设计</h2></a></li>
    <li><a href="tools.html"  target="rightFrame"><img src="images/icon04.png" title="常用工具" /><h2>常用工具</h2></a></li>
    <li><a href="computer.html" target="rightFrame"><img src="images/icon05.png" title="文件管理" /><h2>文件管理</h2></a></li>
    <li><a href="tab.html"  target="rightFrame"><img src="images/icon06.png" title="系统设置" /><h2>系统设置</h2></a></li>
    </ul>
            
    <div class="topright">    
    <ul>
    <li><span><img src="images/help.png" title="帮助"  class="helpimg"/></span><a href="#">帮助</a></li>
    <li><a href="#">关于</a></li>
    <li><a href="login.html" target="_parent">退出</a></li>
    </ul>
     
    <div class="user">
    <span>admin</span>
    <i>消息</i>
    <b>5</b>
    </div>    
    
    </div>

</body>
</html>

   

当账号密码正确时进入以下界面:
在这里插入图片描述
接下来要做的就是将此界面右上角的“admin”改为登陆进去的用户名,(比如张三登进去了,就显示张三)还有点击退出后回到登录界面(注:退回主界面不是单纯的退出,还要强制销毁session等一系列操作)
将admin变为用户名:
首先在servlet类中获取session对象,再将用户数据存储到session中

package com.lzy.servlet;


import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.apache.log4j.Logger;

import com.lzy.pojo.User;
import com.lzy.service.UserService;
import com.lzy.service.imp.UserServiceImpl;

public class UserServlet extends HttpServlet {
	//声明日志对象
	Logger logger=Logger.getLogger(UserServlet.class);
	
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp)
		throws ServletException, IOException {
	//设置请求编码格式
	req.setCharacterEncoding("utf-8");
	//设置响应编码格式
	resp.setCharacterEncoding("text/html;charset=utf-8");
	//获取操作符
	String oper=req.getParameter("oper");
	if("login".equals(oper)){
		//响应登陆操作
		checkUserLogin(req,resp);
	}else if("reg".equals(oper)){
		//响应注册操作
	}else{ 
		logger.debug("响应错误"+oper);
	}	
}

private void checkUserLogin(HttpServletRequest req, HttpServletResponse resp) throws IOException {
	//获取请求信息
	String uname=req.getParameter("uname");
	String pwd=req.getParameter("pwd");
	//处理请求信息
	        //校验
	         UserService us=new UserServiceImpl();
	        User u=us.checkUserLoginService(uname, pwd);
	        if(u!=null){
	        	//获取Session对象
				HttpSession hs=req.getSession();
				//将用户数据存储到session中
				hs.setAttribute("user", u);
	        	//重定向
	        	resp.sendRedirect("/ma/main/main.jsp");
	        }
	         
	
	
}
}

加入50-53行代码
然后在top.jsp中找到
在这里插入图片描述
将admin改为<%=((User)session.getAttribute(“user”)).getUname() %>
在这里插入图片描述
同时在在第一行导包
在这里插入图片描述
运行效果:
在这里插入图片描述
实现退出功能:
最初想的是直接在退出的href中加入"login.jsp"即可

 <li><a href="login.jsp" target="_parent">退出</a></li>

虽然也能成功退到登陆页面,但并没有销毁session等,所以该方法并不可取。
正确的退出方式:
首先在top.jsp中使用jQuery加入以下代码

//退出功能
	$("#out").click(function(){
	var flag=window.confirm("你真的要退出吗?");
	if(flag){
	window.location.href="user?oper=out";
	}
	})

退出连接改为

 <li><a href="javascript:void(0)" id="out">退出</a></li>

此时top.jsp整体代码:

<%@ page language="java" import="java.util.*,com.lzy.pojo.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<base href="<%=basePath%>">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<link href="css/style.css" rel="stylesheet" type="text/css" />
<script language="JavaScript" src="js/jquery.js"></script>
<script type="text/javascript">
$(function(){	
	//顶部导航切换
	$(".nav li a").click(function(){
		$(".nav li a.selected").removeClass("selected")
		$(this).addClass("selected");
	})	
	//退出功能
	$("#out").click(function(){
	var flag=window.confirm("你真的要退出吗?");
	if(flag){
	window.location.href="user?oper=out";
	}
	})
})	
</script>


</head>

<body style="background:url(images/topbg.gif) repeat-x;">

    <div class="topleft">
    <a href="main.html" target="_parent"><img src="images/logo.png" title="系统首页" /></a>
    </div>
        
    <ul class="nav">
    <li><a href="default.html" target="rightFrame" class="selected"><img src="images/icon01.png" title="工作台" /><h2>工作台</h2></a></li>
    <li><a href="imgtable.html" target="rightFrame"><img src="images/icon02.png" title="模型管理" /><h2>模型管理</h2></a></li>
    <li><a href="imglist.html"  target="rightFrame"><img src="images/icon03.png" title="模块设计" /><h2>模块设计</h2></a></li>
    <li><a href="tools.html"  target="rightFrame"><img src="images/icon04.png" title="常用工具" /><h2>常用工具</h2></a></li>
    <li><a href="computer.html" target="rightFrame"><img src="images/icon05.png" title="文件管理" /><h2>文件管理</h2></a></li>
    <li><a href="tab.html"  target="rightFrame"><img src="images/icon06.png" title="系统设置" /><h2>系统设置</h2></a></li>
    </ul>
            
    <div class="topright">    
    <ul>
    <li><span><img src="images/help.png" title="帮助"  class="helpimg"/></span><a href="#">帮助</a></li>
    <li><a href="#">关于</a></li>
    <li><a href="javascript:void(0)" id="out">退出</a></li>
    </ul>
     
    <div class="user">
    <span><%=((User)session.getAttribute("user")).getUname() %></span>
    <i>消息</i>
    <b>5</b>
    </div>    
    
    </div>

</body>
</html>

href="javascript:void(0)"当点击退出时,退出事件会被阻止,会执行jQuery写的方法,当点击确定退出时oper就会等于out,不在等于login,所以在UseSrervlet类中加入以下代码

String oper=req.getParameter("oper");
	if("login".equals(oper)){
		//响应登陆操作
		checkUserLogin(req,resp);
	}else if("reg".equals(oper)){
		//响应注册操作
	}else if("out".equals(oper)){
		userOut(req,resp);
	}else{ 
		logger.debug("响应错误"+oper);
	}	
}

添加7-9行代码,当oper==out时,执行退出操作,同时添加退出的方法

private void userOut(HttpServletRequest req, HttpServletResponse resp) throws IOException {
	
	//获取session对象
	HttpSession hs=req.getSession();
	//强制销毁session
	hs.invalidate();
	//重定向到登录页面
	resp.sendRedirect("/ma/login.jsp");
}

此时的UserServlet类的全部代码:

package com.lzy.servlet;


import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.apache.log4j.Logger;

import com.lzy.pojo.User;
import com.lzy.service.UserService;
import com.lzy.service.imp.UserServiceImpl;

public class UserServlet extends HttpServlet {
	//声明日志对象
	Logger logger=Logger.getLogger(UserServlet.class);
	
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp)
		throws ServletException, IOException {
	//设置请求编码格式
	req.setCharacterEncoding("utf-8");
	//设置响应编码格式
	resp.setCharacterEncoding("text/html;charset=utf-8");
	//获取操作符
	String oper=req.getParameter("oper");
	if("login".equals(oper)){
		//响应登陆操作
		checkUserLogin(req,resp);
	}else if("reg".equals(oper)){
		//响应注册操作
	}else if("out".equals(oper)){
		userOut(req,resp);
	}else{ 
		logger.debug("响应错误"+oper);
	}	
}

private void userOut(HttpServletRequest req, HttpServletResponse resp) throws IOException {
	
	//获取session对象
	HttpSession hs=req.getSession();
	//强制销毁session
	hs.invalidate();
	//重定向到登录页面
	resp.sendRedirect("/ma/login.jsp");
}

private void checkUserLogin(HttpServletRequest req, HttpServletResponse resp) throws IOException {
	//获取请求信息
	String uname=req.getParameter("uname");
	String pwd=req.getParameter("pwd");
	//处理请求信息
	        //校验
	         UserService us=new UserServiceImpl();
	        User u=us.checkUserLoginService(uname, pwd);
	        if(u!=null){
	        	//获取Session对象
				HttpSession hs=req.getSession();
				//将用户数据存储到session中
				hs.setAttribute("user", u);
	        	//重定向
	        	resp.sendRedirect("/ma/main/main.jsp");
	        }
	         
	
	
}
}

然后执行进行测试
执行前:
在这里插入图片描述
点击退出执行后:
在这里插入图片描述

此时会发现退出的仅仅是top.jsp其他的页面并没有退出,
这是因为window.location.href=“user?oper=out”;的作用是当前页面内,而该页面是吧一个页面分为好多块,每块都是独立的,所以只是把top.jsp给退掉,left.jsp,right.jsp等都没有退掉。
解决:
将window.location.href=“user?oper=out”;改为window.top.location.href=“user?oper=out”;
解析:window代表当前整个页面,top是它上一层,也就是上一层的location走该请求(“user?oper=out”)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值