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正则表达式操作指南(re使用)
Sep 06 Python
python操作MongoDB基础知识
Nov 01 Python
python实现批量获取指定文件夹下的所有文件的厂商信息
Sep 28 Python
python处理二进制数据的方法
Jun 03 Python
Flask框架的学习指南之制作简单blog系统
Nov 20 Python
利用Python批量提取Win10锁屏壁纸实战教程
Mar 27 Python
python 公共方法汇总解析
Sep 16 Python
Pytorch之Variable的用法
Dec 31 Python
Python加密模块的hashlib,hmac模块使用解析
Jan 02 Python
Python如何优雅删除字符列表空字符及None元素
Jun 25 Python
python读取excel进行遍历/xlrd模块操作
Jul 12 Python
使用tkinter实现三子棋游戏
Feb 25 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写的serv-u的web申请账号的程序
2006/10/09 PHP
PHP数组循环操作详细介绍 附实例代码
2013/02/03 PHP
CI框架实现创建自定义类库的方法
2018/12/25 PHP
Yii Framework框架开发微信公众平台示例
2020/04/26 PHP
语义化 H1 标签
2008/01/14 Javascript
JS面向对象编程之对象使用分析
2010/08/19 Javascript
JavaScript使用IEEE 标准进行二进制浮点运算产生莫名错误的解决方法
2011/05/28 Javascript
iframe子父页面调用js函数示例
2013/11/07 Javascript
JQuery实现绚丽的横向下拉菜单
2013/12/19 Javascript
Jquery在指定DIV加载HTML示例代码
2014/02/17 Javascript
jquery中的ajax方法怎样通过JSONP进行远程调用
2014/05/04 Javascript
jQuery统计上传文件大小的方法
2015/01/24 Javascript
学习JavaScript事件流和事件处理程序
2016/01/25 Javascript
angularJS 如何读写缓冲的方法(推荐)
2016/08/06 Javascript
原生JavaScript实现AJAX、JSONP
2017/02/07 Javascript
详解Node.js access_token的获取、存储及更新
2017/06/20 Javascript
浅析JavaScript中的平稳退化(graceful degradation)
2017/07/24 Javascript
详解vue-cli 构建项目 vue-cli请求后台接口 vue-cli使用axios、sass、swiper
2018/05/28 Javascript
详解微信小程序获取当前时间及日期的方法
2019/04/28 Javascript
Vue对象赋值视图不更新问题及解决方法
2019/06/03 Javascript
vue中获取滚动table的可视页面宽度调整表头与列对齐(每列宽度不都相同)
2019/08/17 Javascript
小程序实现图片预览裁剪插件
2019/11/22 Javascript
Chrome插件开发系列一:弹窗终结者开发实战
2020/10/02 Javascript
python保存数据到本地文件的方法
2018/06/23 Python
Python简单I/O操作示例
2019/03/18 Python
关于Pytorch的MNIST数据集的预处理详解
2020/01/10 Python
PyCharm汉化安装及永久激活详细教程(靠谱)
2020/01/16 Python
使用BeautifulSoup4解析XML的方法小结
2020/12/07 Python
修复iPhone的safari浏览器上submit按钮圆角bug
2012/12/24 HTML / CSS
上海中网科技笔试题
2012/02/19 面试题
幼儿园开学家长寄语
2014/01/19 职场文书
在校大学生的职业生涯规划书
2014/03/14 职场文书
挂牌仪式策划方案
2014/05/18 职场文书
525心理活动总结
2014/07/04 职场文书
2014年度培训工作总结
2014/11/27 职场文书
军训心得体会范文(2016最新篇)
2016/01/11 职场文书