Login 页面
1、jsp
<script type="text/javascript">
function doLogin() {
if (trim($('#username').val()) == "") {
showmsg(0, "请输入用户名");
return;
}
if (trim($('#password').val()) == "") {
showmsg(0, "请输入密码");
return;
}
$.ajax({
url : "${contextPath}/web/login.htm",
data : $("#loginForm").serialize(),
cache : false,
success : function(xmlHttp) {
var res = xmlHttp;
if (res.errorMessage && res.errorMessage != "") {
showmsg(0, res.errorMessage);
} else {
if (str_isblank(res.status)) {
showmsg(1, "登录成功!");
window.setTimeout("window.location='${contextPath}/web/toindex.htm'", 1500);
} else {
showmsg(1, "登录成功!");
var fromUrl = res.status;
location.href = fromUrl;
}
}
}
}); } </script>
2.controller
@RequestMapping("/tologin.htm")
public String tologin(HttpSession session, RequestParameter param) {
if (!StringUtils.isBlank(param.getBackurl())) {
if (httpSession.getAttribute("NOLOGIN_SHOP_URL") != null) {
httpSession.removeAttribute("NOLOGIN_SHOP_URL");
}
httpSession.setAttribute("NOLOGIN_SHOP_URL", param.getBackurl());
if (param.getBackurl().endsWith("logout.htm"))
httpSession.setAttribute("NOLOGIN_SHOP_URL", "");
}
return "web/login";
}
@RequestMapping("/login.htm")
@ResponseBody
public Response login(Model model, RequestParameter param, InfoUser infoUser) {
Response res = new Response();
SessionUser suser = null;
if (httpSession.getAttribute(WebConstants.SESSION_USER_KEY) != null) {
suser = new SessionUser();
suser = (SessionUser) httpSession.getAttribute(WebConstants.SESSION_USER_KEY);
}
if (null == suser || StringUtils.isBlank(suser.getUsername())) {
// #0: 正常;
// #1: 用户名不存在;
// #2:密码不正确;
Integer ret = webService.loginInfoUser(infoUser);
if (ret == 1) {
res.setErrorMessage("登录失败,用户名不存在。");
} else if (ret == 2) {
res.setErrorMessage("登录失败,密码不正确。");
} else { // 登录成功,写session
InfoUser infoUser1 = webService.getInfoUserByName(infoUser.getUsername());
suser = new SessionUser();
suser.setUserid(infoUser1.getUserid());
suser.setUsername(infoUser1.getUsername());
//suser.setPhonenum(infoUser1.getPhonenum());
httpSession.setAttribute(WebConstants.SESSION_USER_KEY, suser);
if (httpSession.getAttribute("NOLOGIN_SHOP_URL") != null) {
String backurl = (String) httpSession.getAttribute("NOLOGIN_SHOP_URL");
res.setStatus(backurl);
httpSession.removeAttribute("NOLOGIN_SHOP_URL");
}
}
}
return res;
}
Login 页面的更多相关文章
- 没有login页面
"/"应用程序中的服务器错误. 无法找到资源. 说明:HTTP 404.您正在查找的资源(或者它的一个依赖项)可能已被移除,或其名称已更改,或暂时不可用.请检查以下 URL 并确保 ...
- mvc ajax访问后台时session过期无法跳转到Login页面问题解决
public class BaseController : Controller { protected User UserInfo { set { Session["UserInfo&qu ...
- 一个Login页面全面了解session与cookie
背景 做了四年的前端开发,对外一直说自己是web开发,那么身为一个web开发怎能不知道session与cookie以及其管理方式呢~ Login涉及技术栈:Nodejs,MongoDB,Express ...
- [py][mx]django get方法返回login页面
get方法返回login.html users/views.py def login(request): if request.method == "POST": pass eli ...
- 《React后台管理系统实战 :一》:目录结构、引入antd、引入路由、写login页面、使用antd的form登录组件、form前台验证、高阶函数/组件
实战 上接,笔记:https://blog.csdn.net/u010132177/article/details/104150177 https://gitee.com/pasaulis/react ...
- JavaWeb网上图书商城完整项目--day02-14.登录功能的login页面处理
1.现在注册成功之后,我们来到登录页面,登录页面在于 在登录页面.我们也需要向注册页面一样对登录的用户名.密码 验证码等在jsp页面中进行校验,校验我们单独放置一个login.js文件中进行处理,然后 ...
- MVC4.0 使用Form认证,自定义登录页面路径Account/Login
使用MVC4.0的时候,一般遇到会员登录.注册功能,我们都会使用Form认证,给需要身份验证的Action进行授权(需要登录后才能访问的Action添加[Authorize]属性标签),登录.注册的时 ...
- MVC程序部署后页面指向login.aspx
MVC程序在本地没有问题,但是部署到服务器后老是跳转到Login.aspx页面,但是我的MVC程序中根本没有Login页面,看了一下链接是这样的 htttp://localhost:26290/log ...
- Spring Security笔记:自定义Login/Logout Filter、AuthenticationProvider、AuthenticationToken
在前面的学习中,配置文件中的<http>...</http>都是采用的auto-config="true"这种自动配置模式,根据Spring Securit ...
随机推荐
- CHECKBOX_CHECKED built-in in Oracle D2k Forms
CHECKBOX_CHECKED built-in in Oracle D2k Forms DescriptionA call to the CHECKBOX_CHECKED function ret ...
- SQL语句like子句中的转义符
如果想在SQL LIKE里查询有下划线'_'或是'%'等值的记录,直接写成like 'XXX_XX',则会把'_'当成是like的通配符.SQL里提供了 escape子句来处理这种情况,escape可 ...
- [SAP ABAP开发技术总结]字符串处理函数、正则表达式
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- hdu 5023 A Corrupt Mayor's Performance Art 线段树
A Corrupt Mayor's Performance Art Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 100000/100 ...
- Codeforces Round #281 (Div. 2) C. Vasya and Basketball 二分
C. Vasya and Basketball time limit per test 2 seconds memory limit per test 256 megabytes input stan ...
- webview页面和壳通信的库(精简版)
// PG精简版 (function() { var PG = { iosBridge: null, callbackId: 0, callbacks: [], commandQueue: [], c ...
- unity3d vs2012
Unity3D自带的MonoDevelop编辑器无论是js还是c#代码提示都很差,很诡异的就是变量名和方法名有的时候提示有的时候不提示.不过用Visual Studio代替MonoDevelop这个问 ...
- 简单模拟Spring管理Bean对象
1: 首先我们要利用dom4j进行xml的解析,将所有的bean的配置读取出来. 2:利用java的反射机制进行对象的实例化. 3: 直接获得对象 package cn.Junit.test; imp ...
- JUnit 简单的使用 (学习转载)
JUnit4使用Java5中的注解(annotation),以下是JUnit4常用的几个annotation: @Before:初始化方法 对于每一个测试方法都要执行一次(注意与BeforeCla ...
- Json知识总结
JSON对象是一个无序的"名称/值"对的集合它开始于“{”,结束于“}”.每一个属性名和值间用“:”提示,属性间用“,”分隔.一个数组开始于"[",结束于&qu ...