3、ssm框架登录验证

版权声明:版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/nba_linshuhao/article/details/82870309

在这里插入图片描述
该登录验证是在ssm框架登录、增删改查的基础上
项目地址:
https://blog.csdn.net/nba_linshuhao/article/details/82863694

整体思路:
1、不输入名字,提示:请输入用户名
2、输入名字,分两种情况:不管输不输入密码,都会先判断用户是否存在

  • 01、用户不存在,不用判断密码了 提示:用户不存在
  • 02、用户存在,判断密码
    密码错误:提示密码错误
    密码正确:重定向到指定页面

实现步骤如下:
一、User类:

 private Integer id;
    private String name;
    private Integer age;
    private String sex;
    private String password;
    get、set方法省略、、、

二、Controller类(主要代码)

 @RequestMapping("login")
    public String login(@Param("name")String name,@Param("password")String password,Model model) {
        User user=userService.checkUser(name, password);
        if(name==null||"".equals(name)){  //没有输入姓名
            model.addAttribute("msg1","请输入姓名");
        }else if(user==null||"".trim().equals(user)){ //输入姓名但是姓名错误
            model.addAttribute("msg1","账户不存在,请先注册");
            return "login";
        }else if(user!=null &(password==null||"".equals(password))){ //姓名正确,但没有输入密码
            model.addAttribute("msg2","请输入密码");
        }else if(user!=null &!(user.getPassword().equals(password))) { //姓名正确,输入密码,但是密码错误
            model.addAttribute("msg2","密码错误");

        }else if (user!=null &user.getPassword().equals(password)){ //姓名密码均正确
            return "redirect:/user/getAllUser";
        }
        return "login";
    }

三、Service接口实现类(Service接口类省略了)

@Service("userService")
public class UserServiceImpl implements IUserService {
    @Resource
    private IUserDao userDao;
 @Override
    public User checkUser(String name, String password) {
        return userDao.checkUser(name);
    }
}

四、Dao接口类

public interface IUserDao {
  public User checkUser(String name);
}

五、UserDao.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<!-- 设置为IUserDao接口方法提供sql语句配置 -->
<mapper namespace="com.ssm.dao.IUserDao">
    <select id="checkUser" resultType="com.ssm.model.User" parameterType="String">
        select id,name,sex,age,password from user where name=#{name}
    </select>

</mapper>

六、login.jsp
登录失败会有提示返回给jsp页面, ${msg}用来接收返回来的错误信息
登陆成功以后,转到getAllUser,获取全部用户信息

<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>用户登录</title>
</head>
<body>
<div style="width:100%;text-align:center">
    <h1>用户登录</h1>
    <form action="${pageContext.request.contextPath }/user/login"  method="post">
        <span>${msg1}</span><br>
        姓名: <input type="text" name="name" ><br>
        <span>${msg2}</span><br>
        密码: <input type="text" name="password"><br>
        <input type="submit" value="登录">
        <br>
    </form>
</div>
</body>
</html>

主要代码就是这样,其他代码和上个项目一样,只不过添加一个登录验证就ok了

整个项目的代码如下:
https://download.csdn.net/download/nba_linshuhao/10691513

上面的代码是实现登录验证的主要代码,其他的增删改查的代码和以前的项目相同,以前的登录、增删改查的代码如下:
https://download.csdn.net/download/nba_linshuhao/10690238

猜你喜欢

转载自blog.csdn.net/nba_linshuhao/article/details/82870309