Springboot+MybatisPlus实现带验证码的登录

 更新时间:2024年05月16日 09:45:31   作者:​​​​​​​ 小小-菠萝  
本文主要介绍了Springboot+MybatisPlus实现带验证码的登录,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

实现带验证码的登录功能由两部分组成::1、验证码的获取   2、登录(进行用户名、密码和验证码的判断)

获取验证码

获取验证码需要使用HuTool中的CaptchaUtil.createLineCaptcha()来定义验证码的长度、宽度、验证码位数以及干扰线条数

同时也要使用到HttpSession对象和HeepServletResponse对象  session:拿到验证码需要放入session中,response用来返回页面

1、获取验证码对象

LineCaptcha linCaptcha=CaprchaUtil.createLineCaptcha(116,40,4,10);

2、放入session

session.setAttribute("code",lineCaptcha.getCode);

3、输出

ServletOutputStream stream=response.getOutputStream();
lineCaptcha.write(stream);

4、关闭

stream.close();

登录

登录功能首先要去判断验证码,若验证码为空或者不匹配,直接返回错误;否则再去进行用户名和密码的对比

1、判断验证码

String sessioncode=(String)session.getAttribute("code");
if(code!=null && code.equals(sessioncode)
{

}

2、若验证码存在并且象征吗匹配成功则去数据库比对用户名和密码(这里我们需要创建一个新的sql语句 select * from user where username=#{username} &&  password=#{password})如何去创建一个新的sql语句请查看https://www.jb51.net/program/321214aq6.htm

String sessioncode=(String)session.getAttribute("code");
if(code!=null && code.equals(sessioncode)
{
   User user=userService.login(username,password);
   if(user!=null)
   {
      //登录成功
      session.setAttribute("user",user);
   }
   else
   {  //登录失败,用户名或密码有误}
}
else
{  //登录失败,验证码有误}

     

 创建一个新的sql语句 userService.login(username,password)

(1)Mapper中

@Select("select * from user where username=#{uesrname} && password=#{password}
public User login(String username,String password);

 (2)Service中

public User login(Sting username,String password);

 (3)ServiceImpl中

@Autowird 
UserMapper userMapper

@Overried
public User login(String username,String password)
{
   return userMapper.login(username,password);
}

到此这篇关于Springboot+MybatisPlus实现带验证码的登录的文章就介绍到这了,更多相关Springboot MybatisPlus验证码登录内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 我用java实现了王者荣耀的皮肤和英雄技能

    我用java实现了王者荣耀的皮肤和英雄技能

    上篇文章主要实现了创建英雄,创建野怪,创建装备.并且实现了简单的刷怪,购买装备等.本篇文章我优化了我的操作界面,并且实现了英雄技能,英雄皮肤等,需要的朋友可以参考下
    2021-05-05
  • Spring Schedule Task动态改写Cron配置方式

    Spring Schedule Task动态改写Cron配置方式

    这篇文章主要介绍了Spring Schedule Task动态改写Cron配置方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-11-11
  • SpringBoot2底层注解@Configuration配置类详解

    SpringBoot2底层注解@Configuration配置类详解

    这篇文章主要为大家介绍了SpringBoot2底层注解@Configuration配置类详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • Java中zip文件压缩与解压之ZipInputStream和ZipOutputStream

    Java中zip文件压缩与解压之ZipInputStream和ZipOutputStream

    这篇文章主要给大家介绍了关于Java中zip文件压缩与解压之ZipInputStream和ZipOutputStream的相关资料,ZipInputStream 和 ZipOutputStream 可以用于处理 ZIP文件格式,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-10-10
  • 使用mybatis拦截器处理敏感字段

    使用mybatis拦截器处理敏感字段

    这篇文章主要介绍了mybatis拦截器处理敏感字段方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • idea 如何查找类中的某个方法

    idea 如何查找类中的某个方法

    这篇文章主要介绍了idea 如何查找类中的某个方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02
  • Draw.io部署详细步骤

    Draw.io部署详细步骤

    Draw.io 是 GitHub 上的一个开源的免费流程图绘制工具,功能非常的丰富,Draw.io 是开源的,所以针对外网访问不稳定或在访问不了外网的情况,我们可以将其部署到我们本地,也就是把本地当作服务端,本文将一步一步介绍具体部署步骤,感兴趣的朋友一起看看吧
    2023-10-10
  • Java死锁产生原因及示例

    Java死锁产生原因及示例

    本文主要介绍了Java死锁产生原因及示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06
  • spring整合cxf框架实例

    spring整合cxf框架实例

    下面小编就为大家带来一篇spring整合cxf框架实例。小编觉得挺不错的。现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • AI算法实现五子棋(java)

    AI算法实现五子棋(java)

    这篇文章主要为大家详细介绍了AI算法实现五子棋,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-09-09

最新评论