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中的闭包用法实例详解
May 05 Python
python脚本内运行linux命令的方法
Jul 02 Python
详解Python if-elif-else知识点
Jun 11 Python
使用pandas把某一列的字符值转换为数字的实例
Jan 29 Python
Python 50行爬虫抓取并处理图灵书目过程详解
Sep 20 Python
在tensorflow中实现屏蔽输出的log信息
Feb 04 Python
Django调用支付宝接口代码实例详解
Apr 04 Python
如何安装并在pycharm使用selenium的方法
Apr 30 Python
django美化后台django-suit的安装配置操作
Jul 12 Python
DRF框架API版本管理实现方法解析
Aug 21 Python
Python如何执行系统命令
Sep 23 Python
自动在Windows中运行Python脚本并定时触发功能实现
Sep 04 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后门URL的防范
2013/11/12 PHP
详谈phpAdmin修改密码后拒绝访问的问题
2017/04/03 PHP
PHP封装的PDO数据库操作类实例
2017/06/21 PHP
PHP7 其他修改
2021/03/09 PHP
Avengerls vs KG BO3 第二场2.18
2021/03/10 DOTA
基于JavaScript 类的使用详解
2013/05/07 Javascript
jqgrid 表格数据导出实例
2013/11/21 Javascript
判断数组的最佳方法(推荐)
2016/10/11 Javascript
js 中获取制定的cook信息实现方法
2016/11/19 Javascript
js实现点击每个li节点,都弹出其文本值及修改
2016/12/15 Javascript
Bootstrap Scrollspy源码学习
2017/03/02 Javascript
实例讲解Vue.js中router传参
2018/04/22 Javascript
nuxt.js 缓存实践
2018/06/25 Javascript
解决使用bootstrap的dropdown部件时报错:error:Bootstrap dropdown require Popper.js问题
2018/08/30 Javascript
vue代码分割的实现(codesplit)
2018/11/13 Javascript
Vue结合路由配置递归实现菜单栏功能
2020/06/16 Javascript
手写Vue源码之数据劫持示例详解
2021/01/04 Vue.js
跟老齐学Python之变量和参数
2014/10/10 Python
深入理解Python装饰器
2016/07/27 Python
Python解析json之ValueError: Expecting property name enclosed in double quotes: line 1 column 2(char 1)
2017/07/06 Python
Python查找第n个子串的技巧分享
2018/06/27 Python
python 读取鼠标点击坐标的实例
2018/12/29 Python
python DataFrame 取差集实例
2019/01/30 Python
Python使用Matlab命令过程解析
2020/06/04 Python
html5 canvas绘制放射性渐变色效果
2018/01/04 HTML / CSS
Oakley官网:运动太阳镜、雪镜和服装
2016/09/30 全球购物
捷克汽车配件和工具销售网站:TorriaCars
2018/02/26 全球购物
西班牙香水和化妆品购物网站:Arenal Perfumerías
2019/03/01 全球购物
中专药剂专业应届毕的自我评价
2013/12/27 职场文书
四个太阳教学反思
2014/02/01 职场文书
秋季开学典礼主持词
2014/03/19 职场文书
《风筝》教学反思
2014/04/10 职场文书
在校实习生求职信
2014/06/18 职场文书
2015年社区服务活动总结
2015/03/25 职场文书
运动会宣传稿100字
2015/07/23 职场文书
uniapp开发小程序的经验总结
2021/04/08 Javascript