package com.springmvchibernate.ContinuingEducation.controller;
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.util.WebUtils;
import com.springmvchibernate.ContinuingEducation.log.Logger;
import com.springmvchibernate.ContinuingEducation.model.SYS_PERSON_USER;
import com.springmvchibernate.ContinuingEducation.model.SYS_USER;
import com.springmvchibernate.ContinuingEducation.service.Manage_userService;
import com.springmvchibernate.ContinuingEducation.service.Sys_person_userService;
import com.springmvchibernate.ContinuingEducation.service.Sys_userService;
import com.springmvchibernate.ContinuingEducation.util.MD5;
/**
* 用户登录控制类
*
* @参数 username 用户名
*
* @参数 password 密码
*
* @参数 checkcode 验证码
*
* @作者 牛文吉
* */
@Controller
public class LoginController {
@Autowired
Sys_userService sys_userService;
@Autowired
Manage_userService manage_userService;
@Autowired
Sys_person_userService sys_person_userService;
@RequestMapping(value = "admin", method = RequestMethod.POST)
public ModelAndView admin(HttpServletRequest request,HttpServletResponse response){
response.setContentType("text/html;charset=UTF-8");
try {
Logger.audit("进入->:后台用户登录");
String username = request.getParameter("username").trim();
String password = request.getParameter("password").trim();
String checkcode = request.getSession().getAttribute("rand").toString();
if (checkcode.equals(request.getParameter("rand").toString().trim())) {
if (manage_userService.checkUser(username, password)) {
Logger.audit("进入->:用户登录成功,设置session值");
WebUtils.setSessionAttribute(request, "adminuser", manage_userService.getByUserName(username));
response.getWriter().print("success");
}else{
Logger.audit("进入->:用户登录失败,用户名或密码错误!");
response.getWriter().print("error");
}
}else{
response.getWriter().print("codeerr");
}
}
catch (IOException e) {
e.printStackTrace();
}catch (java.lang.NullPointerException e){
e.printStackTrace();
}finally{
Logger.audit("退出->:后台用户登录方法!");
}
return null;
}
@RequestMapping(value = "login", method = RequestMethod.POST)
public ModelAndView login(HttpServletRequest request,HttpServletResponse response){
try {
String username = request.getParameter("username").trim();
String password = request.getParameter("password").trim();
String checkcode = request.getSession().getAttribute("rand").toString();
if (checkcode.equals(request.getParameter("pagecode").toString().trim())) {
if (sys_userService.checkUser(username, MD5.MD5Code(password))) {
SYS_USER user=sys_userService.FindByProperty("USERNAME", username);
if(user.getAUDITT().equals("Y")){
Logger.audit("进入->:用户登录成功,设置session值");
WebUtils.setSessionAttribute(request, "user", user);
response.getWriter().print("success");
}else{
Logger.audit("进入->:用户登录失败,还没有通过审核");
response.getWriter().print("auerr");
}
}else if(sys_person_userService.UserIsExis(username, MD5.MD5Code(password))){
SYS_PERSON_USER puser = sys_person_userService.FindByProperty("USERNAME", username);
SYS_USER user=sys_userService.FindByProperty("GROUPID", String.valueOf(puser.getGROUPID()));
if(user.getAUDITT().equals("Y")){
Logger.audit("进入->:用户登录成功,设置session值");
WebUtils.setSessionAttribute(request, "preuser",puser);
response.getWriter().print("success");
}else
{
Logger.audit("进入->:个人用户登录失败,企业用户已失效,所以本单位所有用户不能登录!");
response.getWriter().print("preerr");
}
}else{
Logger.audit("进入->:用户登录失败,用户名或密码错误!");
response.getWriter().print("error");
}
}else{
response.getWriter().print("codeerr");
}
}
catch (IOException e) {
e.printStackTrace();
}catch (java.lang.NullPointerException e){
e.printStackTrace();
}finally{
Logger.audit("退出->:前台用户登录方法!");
}
return null;
}
/**
* @作者:牛文吉
* @说明:该方法主要:用户登录后,可通过本方法注销登录信息,使用用户失效
* @param request 传入当前请求对象
* @param response 传入当前响应对象
*/
@RequestMapping(value = "logout", method = RequestMethod.GET)
public void logout(HttpServletRequest request,
HttpServletResponse response) throws Exception {
/* 删除用户登录信息 */
Logger.audit("进入->:登录注销开始!");
Logger.audit("注销用户信息->:"+ WebUtils.getSessionAttribute(request,"adminuser"));
Logger.audit("注销用户信息->:"+ WebUtils.getSessionAttribute(request,"user"));
Logger.audit("注销用户信息->:"+ WebUtils.getSessionAttribute(request,"preuser"));
WebUtils.setSessionAttribute(request,"adminuser", null);
WebUtils.setSessionAttribute(request,"user", null);
WebUtils.setSessionAttribute(request,"preuser", null);
Logger.audit("退出->:登录注销成功!");
/* 删除用户登录信息后返回首页 */
response.sendRedirect("/index.xhtml");
}
/**
* @作者:牛文吉
* @说明:该方法主要:用户登录后成功后转发
* @param request 传入当前请求对象
* @param response 传入当前响应对象
*/
@RequestMapping(value = "success", method = RequestMethod.GET)
public ModelAndView success(HttpServletRequest request,
HttpServletResponse response) throws Exception {
ModelAndView mav=new ModelAndView();
Logger.audit("进入->:成功登录后转发到成功页!");
mav.setViewName("ContinuingEducationWeb/success/success");
Logger.audit("退出->:成功转发!");
return mav;
}
}
分享到:
相关推荐
本文将深入探讨如何使用HTML和JavaScript(JS)创建一个基本的"login登录界面"。 首先,我们从HTML开始,HTML(HyperText Markup Language)是构建网页结构的基础语言。对于登录界面,我们需要创建一个表单来收集...
"简洁漂亮的login登录页面"是一个设计概念,它强调了美观与实用性的结合,适用于后台管理界面以及前台用户界面。这个设计采用现代网页设计趋势,注重用户体验和视觉吸引力。 首先,CSS(层叠样式表)是网页设计的...
标题中的“多款css3实用后台LOGIN登录框html模板”是指一系列基于CSS3技术设计的登录界面HTML模板,这些模板专为后台管理系统设计,旨在提供美观且功能齐全的登录页面。CSS3是层叠样式表的最新版本,它带来了许多...
这里的"reg_login登录系统"是一个基于Struts 2.1实现的用户注册和登录功能的实例,表明该系统可能包含了用户注册、验证以及登录验证等关键功能。 SSH是三个开源Java开发框架的缩写,分别代表Spring、Struts和...
"Login登录页面小样"这个项目旨在为初学者提供一个基础的登录界面设计概念和思路,帮助他们理解如何创建一个简洁且有效的登录界面。 首先,我们来详细探讨一下登录页面的设计原则。登录页面的主要功能是让用户输入...
登录功能的实现
描述中的“login登录页源码 html源码”进一步强调了这是专门用于创建登录界面的HTML代码。HTML(超文本标记语言)是网页内容的基础结构语言,通过标签来定义文本、图像和其他元素的布局和样式。在这个项目中,HTML将...
WordPress theme-my-login登录框插件汉化 插件简介: 插件功能不错:快速登录入口,快速注册入口,登录页面设置,跳转设置,注册邮件设置等等。 因为时间有点赶,仅汉化了访客会接触到的注册界面部分,后台设置的...
本案例“Flask Login登录成功返回上一页”主要关注的是如何在用户登录成功后将其重定向到之前的页面,这涉及到用户认证、session管理和URL处理等关键知识点。 首先,Flask-Login是一个为Flask设计的用户会话管理库...
在这个名为“Flask Login登录成功返回上一页”的压缩包中,我们可以推测它包含了一个示例项目,展示了如何在用户成功登录后将他们重定向回他们之前尝试访问的页面。 首先,让我们理解Flask-Login的核心概念: 1. *...
在这个"高大上Login登录页面.zip"中,包含的资源旨在创建一个既美观又功能强大的登录界面。让我们详细了解一下其中涉及的关键知识点。 首先,我们看到有一个`index.html`文件。这通常代表网页的主文件,它使用HTML...
【标题】:“大气login登录页面html模板.zip” 这个标题表明我们正在处理一个HTML模板,专门设计用于创建大气、专业的登录页面。HTML(HyperText Markup Language)是网页开发的基础语言,用于构建网页结构。模板...
《基于Python的Flask_Login登录成功返回上一页》 在计算机科学领域,特别是在Web开发中,用户认证系统是不可或缺的一部分。本项目以Python的Flask框架为基础,结合Flask_Login库,实现了一个登录功能,当用户成功...
2. `login\images\login_05.gif`、`login\images\login_07.gif`、`login\images\login_12.gif`、`login\images\login_06.gif`:这些可能是登录页面的图形元素,如按钮、背景或提示图标。 3. `web\images\main_03.gif...
"login登录页面粒子背景动效.rar" 提供了一个利用粒子背景实现动态效果的登录页面示例。粒子背景动效是一种现代且流行的设计趋势,它可以为用户带来视觉上的愉悦感,提升用户体验。 首先,我们要理解什么是粒子背景...
本示例文件"Web开发-Flask Login登录成功返回上一页-Python源码示例.zip"专注于解决一个常见的用户体验问题:用户在登录后如何返回到他们之前试图访问的页面。这一功能在很多网站中都很常见,如电子商务平台、社交...
山东黄金课程
多款css3实用后台LOGIN登录框html模板_后台管理 login 后台 登录 html5 bootstrap 留言 留言框多款css3实用后台LOGIN登录框html模板_后台管理 login 后台 登录 html5 bootstrap 留言 留言框
C++ QT login 登录界面 小例子