100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 使用虚拟登录页面jsp 跳过登录页 直接访问主页面

使用虚拟登录页面jsp 跳过登录页 直接访问主页面

时间:2020-09-19 23:48:54

相关推荐

使用虚拟登录页面jsp 跳过登录页 直接访问主页面

最近在修改项目的一个模块,项目本身是java + springMVC开发的,重新用.net来写一个模块块,因此需要从主页面跳转到.net页面,再从.net页面返回登录成功的主页面,现总结如下:

跳转到.net页面,在主页面图标添加点击事件。在URL中添加.net页面需要的参数即可;

从.net页面返回时,需要创建一个新的jsp,本项目中,

原来的登录页jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" 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" "/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>欢迎进入食药通电子监管平台</title>

<style type="text/css">

body {

background-color: #95CBA5;

}

</style>

<link href="<%=request.getContextPath()%>/css/css05/food.css" rel="stylesheet" type="text/css" />

<link href="<%=request.getContextPath()%>/css/css05/base.css" rel="stylesheet" type="text/css" />

<script type="text/javascript" src="<%=request.getContextPath()%>/ext3/adapter/ext/ext-base.js"></script>

<script type="text/javascript" src="<%=request.getContextPath()%>/ext3/ext-all.gzjs"></script>

<script type="text/javascript" src="<%=request.getContextPath()%>/ext3/ext-lang-zh_CN.js"></script>

<script type="text/javascript" >

window.onload = function ()

{

var map = new Ext.KeyMap(document, [{

key : Ext.EventObject.ENTER,

fn : function() { loginHandler();}

}

]);

var errMsg = "${loginUserPassError}";

if(errMsg!=null && errMsg !="")

{

var diverrMsg = $("errMsg");

diverrMsg.innerText = errMsg;

}

}

function $(name)

{

return document.getElementById(name);

}

/**

* 登录

*/

function loginHandler () {

Ext.Ajax.request(

{

url :"<%=basePath %>weblogin.do",

method : "POST",

form: 'loginform',

success : function(response) {

var result = Ext.util.JSON.decode(response.responseText);

if (result.success) {

var statusBar = new Ext.ProgressBar({

text : '正在登录...'

});

statusBar.show();

window.location.href = '<%=basePath %>main.jsp';

} else {

var diverrMsg = $("errMsg");

diverrMsg.innerText = result.msg;

$("password").value = "";

$("username").focus(true);

}

},

failure : function(response) {

}

});

}

</script>

<style type="">

</style>

</head>

<body class="">

<form action="<%=basePath %>login.do" method="post" id="loginform">

<div class="login_bg">

<div class=" h210 w300 ml0 mt0">

<div id="errMsg" style="color:red;text-align:center;"></div>

<div class="h60 w230 mauto">

用户名:

<div class="fl input_bg w230 mt4">

<div class="fl dsb">

<input id="username" name="username" type="text" value="" class="input w215"/>

</div>

</div>

</div>

<div class="h60 w230 mauto">

密码:

<div class="fl input_bg w230 mt4">

<div class="fl dsb">

<input id="password" name="password" type="password" value="" class="input w215"/>

</div>

</div>

</div>

<div class="login mauto mt18 ">

<!-- 改为submit按钮 -03-21 wxl

<a href="#" class="login_button"> </a>

-->

<input id="submit" name="submit" type="button" value="" class="login_button" οnclick="loginHandler();"/>

</div>

</div>

</div>

</form>

</body>

</html>

我的jsp是这样的:

<%@ page language="java" contentType="text/html; charset=UTF-8"

pageEncoding="UTF-8"%>

<%@page import="com.htsoft.oa.service.system.AppUserService"%>

<%@page import="com.htsoft.oa.model.system.AppUser"%>

<%@page import="com.htsoft.core.util.AppUtil"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

AppUserService appUserService=(AppUserService)AppUtil.getBean("appUserService");

%>

<%

String userid=request.getParameter("myid");

String password=request.getParameter("mypwd");

if(null==userid||""==userid||null==password||""==password){

response.sendRedirect("weblogin.jsp");

return;

}

request.getSession().setAttribute("pwd", password);

long id=Long.parseLong(userid);

AppUser user=appUserService.findByUserId(id);

String username=user.getUsername();

%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title><%=AppUtil.getCompanyName()%></title>

<script type="text/javascript" src="<%=request.getContextPath()%>/ext3/adapter/ext/ext-base.js"></script>

<script type="text/javascript" src="<%=request.getContextPath()%>/ext3/ext-all.gzjs"></script>

<script type="text/javascript" src="<%=request.getContextPath()%>/ext3/ext-lang-zh_CN.js"></script>

<script type="text/javascript">

window.onload = function ()

{

var map = new Ext.KeyMap(document, [{

key : Ext.EventObject.ENTER,

fn : function() { loginHandler();}

}

]);

var errMsg = "${loginUserPassError}";

if(errMsg!=null && errMsg !="")

{

var diverrMsg = $("errMsg");

diverrMsg.innerText = errMsg;

}

}

function $(name)

{

return document.getElementById(name);

}

function loginHandler () {

Ext.Ajax.request(

{

url :"<%=basePath %>login.do",

method : "POST",

form: 'loginform',

success : function(response) {

var result = Ext.util.JSON.decode(response.responseText);

if (result.success) {

var statusBar = new Ext.ProgressBar({

text : '正在登录...'

});

statusBar.show();

window.location.href = '<%=basePath %>main.jsp';

} else {

var diverrMsg = $("errMsg");

diverrMsg.innerText = result.msg;

$("password").value = "";

$("username").focus(true);

}

},

failure : function(response) {

}

});

}

</script>

</head>

<bodyοnlοad="loginHandler();">

<form method="post" id="loginform" name="myform">

<input id="username" name="username"type="hidden" value="<%=username%>"class="input w215"/>

<input id="password" name="password"type="hidden" value="<%=password%>"class="input w215"/>

</form>

</body>

</html>

通过地址栏获取登录需要的参数,将输入框设置为相应的"type="hidden" value="<%=username%>",type="hidden" value="<%=password%>"

这样通过url传递相应参数访问这个jsp就可以直接跳转到登录成功后的页面;

另外;

通过

if(null==userid||""==userid||null==password||""==password){

response.sendRedirect("weblogin.jsp");

return; //注意,在页面判断时必须使用return或加上else语句来实现。response.sendRedirect语句是在执行完本页面所有代码才跳转,若下面的参数有问题则会报错;

}

这段代码来判断访问是否合法,当.net页面超时时访问此页面就需从登录页面重新登录,满足项目的要求。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。