SSM框架完成Ajax简单用户登录验证
一、前端JSP
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Login</title>
</head>
<script type="text/javascript" src="statics/js/jquery-3.3.1.js"></script> <script type="text/javascript"> function userLogin(){
$.ajax({
type : "post",
url : "checkLogin",
dataType:"json",
data:{
username:$("#username").val(),
password:$("#password").val()
},
success : function(data) {
if(data.code == "0"){
window.location.href = "JSP/welcome.jsp";
}else {
alert(data.errorInfo+"");
$("#showMessage").val(data.errorInfo+"");
}
}
});
}
</script>
<body> 用户名:<input type="text" name="username" id="username"/><br/>
密 码:<input type="password" name="password" id="password"/><br/>
<input type="button" name="login" value="登录" onclick="userLogin()"/><br/>
<textarea id="showMessage" style="border: none;"></textarea>
</body>
</html>
这里使用 window.location.href = "JSP/welcome.jsp" 完成Ajax里的重定向,而没有选择在Controller里返回视图
二、后台Controller
package myProject.Controller;
import myProject.Model.User;
import myProject.Service.UserService;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody; import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.Map; @Controller
public class LoginController { @Resource
private UserService userService; @RequestMapping(value = "/checkLogin",method = RequestMethod.POST)
@ResponseBody
public Map userLoginCheck(HttpServletRequest request){ System.out.println("进入该方法");
String username = request.getParameter("username");
String password = request.getParameter("password"); System.out.println("request.getParameter "+username);
System.out.println("request.getParameter "+password); Boolean result = checkLogin(username,password);
Map<String, Object> map = new HashMap<>(); if (result) {
map.put("code", 0);
}
else{
map.put("code", 1);
map.put("errorInfo","登录失败,请重新登录");
}
return map;
} public boolean checkLogin(String username,String password){
User user = userService.getUserByName(username);
if (user == null || "".equals(user)){
return false;
}
if (user.getUserPwd().equals(password)){
return true;
}else {
return false;
} } }
三、测试结果
3.1 用户名和密码都正确


3.2 用户名或密码不正确

相关参考:http://www.cnblogs.com/boycelee/p/6243646.html
SSM框架完成Ajax简单用户登录验证的更多相关文章
- Servlet课程0425(四) Servlet实现简单用户登录验证
Login.java //登录界面 package com.tsinghua; import javax.servlet.http.*; import java.io.*; public class ...
- DBCP(MySql)+Servlet+BootStrap+Ajax实现用户登录与简单用户管理系统
目 录 简介 本次项目通过Maven编写 本文最后会附上代码 界面截图 登录界面 注册界面 登录成功进入主页 增加用户操作 删除用户操作 修改用户操作 主要代码 Dao层代码 DBCP代码 Se ...
- 用javascript实现简单的用户登录验证
用javascript实现简单的用户登录验证 <!DOCTYPE html> <html lang="en"> <head> <meta ...
- Python程序练习1-模拟用户登录验证
1.功能简介 此程序模拟用户登录验证的过程,实现用户名输入.黑名单检测.用户有效性判别.密码输入及验证等.用户在3次以内输入正确密码登陆成功,连续输错3次密码登陆失败,且该用户名被记录在黑名单,黑名单 ...
- djangorestframework-jwt自带的认证视图进行用户登录验证源代码学习
Django REST framework JWT djangorestframework-jwt自带的认证视图进行用户登录验证源代码学习 SECRET_KEY = '1)q(f8jrz^edwtr2 ...
- Spring学习之SpringMVC框架快速搭建实现用户登录功能
引用自:http://blog.csdn.net/qqhjqs/article/details/41683099?utm_source=tuicool&utm_medium=referral ...
- SSM项目使用拦截器实现登录验证功能
SSM项目使用拦截器实现登录验证功能 登录接口实现 public User queryUser(String UserName, String Password,HttpServletRequest ...
- android loginDemo +WebService用户登录验证
android loginDemo +WebService用户登录验证 本文是基于android4.0下的loginActivity Demo和android下的Webservice实现的.l ...
- cookie实现用户登录验证
cookie实现用户登录验证 1, INSTALLED_APPS中注册app03 2,在主程序中新建映射关系到app3的url中 from django.conf.urls import url,in ...
随机推荐
- Vim编辑器设置及其使用
一.vim编辑器的相关配置文件 /etc/vimrc:vim编辑器的全局配置文件,针对所有用户有效 /etc/virc:vi编辑器的全局配置文件,针对所有用户有效 ~/.vimrc:vim编辑器的其他 ...
- Flask性能优化对比
基于Flask的网关:Flask,Uwsgi,Gevent,Gunicorn(gevent),Tornado,Twisted !/usr/bin/python -- coding:utf-8 -- 美 ...
- Oracle查询临时表空间的占用
可以使用以下语句查询是哪个session number的哪个sql占用了较大的临时表空间 select inst_id,username,session_num,sql_id,tablespace,s ...
- Vue 服务端渲染(SSR)
什么是服务端渲染? 简单理解是将组件或页面通过服务器生成html字符串,再发送到浏览器,最后将静态标记"混合"为客户端上完全交互的应用程序. 服务端渲染的优点 更好的SEO,搜索引 ...
- t-SNE完整笔记
http://www.datakit.cn/blog/2017/02/05/t_sne_full.html t-SNE(t-distributed stochastic neighbor embedd ...
- Halcon 和 C# 联合编程 - 图像变量的相互转换(HObject、HImage、Bitmap)
/// <summary> /// 灰度图像 HObject -> Bitmap /// </summary> public static Bitmap HObject2 ...
- [转载]ISO 8601规则
1.每年有52周或者53周2.周一至周日为一个完整周.3.每周的周一是该周的第1天.周日是该周的第7天4.每年的第一周 为 每年的第一个周四所在的周.比如 2017年1月5日为当年的第一个周四,那么 ...
- WSDL文件
WSDL: <!--一次webservice调用,其实并不是方法调用,而是发送SOAP消息 ,即xml片段--> <!--以上一篇中的wsdl文档为例,这里我将注释写到文档中 --& ...
- centos6.9系列LNMP环境的安装
一.Nginx 1.先解决Nginx的依赖关系: yum install -y pcre-devel openssl-devel 2.安装wget:sudo yum -y install wget 3 ...
- Java中日期格式(String、Date、Calendar)的相互转换
package day20190318; import java.text.ParseException; import java.text.SimpleDateFormat; import java ...