SpringBoot实现登录注册常见问题解决方案


Posted in Python onMarch 04, 2020

一、用户名密码都正确的情况下被登录拦截器拦截

SpringBoot实现登录注册常见问题解决方案

控制台报错:org.apache.ibatis.executor.ExecutorException: A query was run and no Result Maps were found for the Mapped Statement 'com.spbt.mapper.EmpeeMapper.selectName'. It's likely that neither a Result Type nor a Result Map was specified.

这个异常是在mapper文件的<select>标签中没有指定 resultType 或者 resultMap,也就是说没有指定返回值类型或者返回值类型的map集合

所以检查自己的mapper文件:

<?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">
<mapper namespace="com.spbt.mapper.EmpeeMapper">

  <select id="selectName" parameterType="String">
    select username from empee where username=#{username}
  </select>

  <select id="selectPwdByName" parameterType="String">
    select password from empee where username=#{username}
  </select>

</mapper>

可以发现我的<select>标签中没有指定 resultType,而是指定的parameterType(参数类型)

解决:将parameterType修改为resultType

登录成功:

SpringBoot实现登录注册常见问题解决方案

二、页面没有显示传递的消息

SpringBoot实现登录注册常见问题解决方案

这是LoginController的实现登录代码

RequestMapping("/empee/login")
public String login(@RequestParam("username") String username,
          @RequestParam("password") String password,
          Model model, HttpSession session){
  if (empeeMapper.selectName(username)!=null){
    //用户名存在
    if (empeeMapper.selectPwdByName(username).equals(password)){
      //密码也正确
      session.setAttribute("loginEmpee",username);
      return "redirect:/main.html";
    }else {
      model.addAttribute("msg","密码错误");
      return "redirect:/index";
    }
  }else {
    model.addAttribute("msg","用户名不存在,请注册");
    return "redirect:/index";
  }
}

我输入错误的信息,而点击登录之后应该会反馈给页面

解决:这其实是一个非常低级的错误,因为我设置了重定向redirect:/index,所以重新定回这个页面当然就没有反馈信息了,去掉多余的redirect:/就可以了

三、添加(注册)成功却跳转到空白页

SpringBoot实现登录注册常见问题解决方案

点击添加,出现空白页

SpringBoot实现登录注册常见问题解决方案

但是查看自己的数据库发现注册是成功的

SpringBoot实现登录注册常见问题解决方案

控制台报错:org.apache.ibatis.binding.BindingException: Mapper method 'com.spbt.mapper.EmpeeMapper.insertEmpee' has an unsupported return type: class com.spbt.pojo.Empee

可以发现出错原因在于EmpeeMapper文件的insertEmpee方法,而且是返回值类型的错误

检查EmpeeMapper:

SpringBoot实现登录注册常见问题解决方案

我使用的是Empee类型的返回值类型,而我的Controller文件中并没有写他的返回值

SpringBoot实现登录注册常见问题解决方案

解决方法:把EmpeeMapper文件的insertEmpee方法修改为void类型

SpringBoot实现登录注册常见问题解决方案

添加成功并且成功跳转

SpringBoot实现登录注册常见问题解决方案

我还在网上看见另一种解决方法,是修改为int类型,经过验证确实可行

由于之后没有进行其他操作,因此不清楚这样做会对之后的操作是否有影响,总之还是一步一个脚印的改下去吧

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
跟老齐学Python之有容乃大的list(4)
Sep 28 Python
Python基础中所出现的异常报错总结
Nov 19 Python
Python实现基于二叉树存储结构的堆排序算法示例
Dec 08 Python
Python实现PS滤镜碎片特效功能示例
Jan 24 Python
解决Pycharm运行时找不到文件的问题
Oct 29 Python
对python pandas读取剪贴板内容的方法详解
Jan 24 Python
Python操作qml对象过程详解
Sep 26 Python
关于Numpy中的行向量和列向量详解
Nov 30 Python
python实现滑雪游戏
Feb 22 Python
Python图像处理库PIL的ImageDraw模块介绍详解
Feb 26 Python
Python脚本打包成可执行文件过程解析
Oct 20 Python
Django 权限管理(permissions)与用户组(group)详解
Nov 30 Python
Python读取文件内容为字符串的方法(多种方法详解)
Mar 04 #Python
python实现猜拳游戏
Mar 04 #Python
Python单例模式的四种创建方式实例解析
Mar 04 #Python
通过实例解析Python return运行原理
Mar 04 #Python
Python递归函数特点及原理解析
Mar 04 #Python
Mac中PyCharm配置Anaconda环境的方法
Mar 04 #Python
python实现简单井字棋游戏
Mar 04 #Python
You might like
php生成txt文件标题及内容的方法
2014/01/16 PHP
PHP文件读写操作相关函数总结
2014/11/18 PHP
php 数组元素快速去重
2017/05/05 PHP
Yii2框架控制器、路由、Url生成操作示例
2019/05/27 PHP
javascript动画效果类封装代码
2007/08/28 Javascript
关于JQuery($.load)事件的用法和分析
2013/04/09 Javascript
javascript三元运算符用法实例
2015/04/16 Javascript
javascript获取select值的方法分析
2015/07/02 Javascript
JS函数定义方式的区别介绍
2016/03/22 Javascript
JavaScript入门教程之引用类型
2016/05/04 Javascript
vuejs开发组件分享之H5图片上传、压缩及拍照旋转的问题处理
2017/03/06 Javascript
浅谈struts1 &amp; jquery form 文件异步上传
2017/05/25 jQuery
详解js静态资源文件请求的处理
2017/08/01 Javascript
原生js封装运动框架的示例讲解
2017/10/01 Javascript
30分钟用Node.js构建一个API服务器的步骤详解
2019/05/24 Javascript
纯异步nodejs文件夹(目录)复制功能
2019/09/03 NodeJs
jQuery 查找元素操作实例小结
2019/10/02 jQuery
webpack4 optimization使用总结
2019/11/10 Javascript
Vue+Vuex实现自动登录的知识点详解
2020/03/04 Javascript
原生JS生成指定位数的验证码
2020/10/28 Javascript
快速了解Python开发中的cookie及简单代码示例
2018/01/17 Python
Python内置模块hashlib、hmac与uuid用法分析
2018/02/12 Python
Python程序打包工具py2exe和PyInstaller详解
2019/06/28 Python
python将字母转化为数字实例方法
2019/10/04 Python
Melijoe美国官网:法国奢侈童装购物网站
2017/04/19 全球购物
说说在weblogic中开发消息Bean时的persistent与non-persisten的差别
2013/04/07 面试题
社区国庆节活动方案
2014/02/05 职场文书
期中考试反思800字
2014/05/01 职场文书
遵纪守法演讲稿
2014/05/23 职场文书
会计求职信范文
2014/05/24 职场文书
自动化专业毕业生求职信
2014/06/18 职场文书
2014年人事行政工作总结
2014/12/03 职场文书
结婚保证书(卖身契)
2015/02/26 职场文书
2015年团支书工作总结
2015/04/03 职场文书
学生检讨书怎么写
2015/05/07 职场文书
彻底卸载VMware虚拟机的超详细步骤记录
2022/07/15 Servers