最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot實現(xiàn)登錄注冊常見問題解決方案

 更新時間:2020年03月04日 14:09:54   作者:LonZyuan  
這篇文章主要介紹了SpringBoot實現(xiàn)登錄注冊常見問題解決方案,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

一、用戶名密碼都正確的情況下被登錄攔截器攔截

控制臺報錯: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>

可以發(fā)現(xiàn)我的<select>標簽中沒有指定 resultType,而是指定的parameterType(參數(shù)類型)

解決:將parameterType修改為resultType

登錄成功:


二、頁面沒有顯示傳遞的消息

這是LoginController的實現(xiàn)登錄代碼

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";
  }
}

我輸入錯誤的信息,而點擊登錄之后應(yīng)該會反饋給頁面

解決:這其實是一個非常低級的錯誤,因為我設(shè)置了重定向redirect:/index,所以重新定回這個頁面當(dāng)然就沒有反饋信息了,去掉多余的redirect:/就可以了

三、添加(注冊)成功卻跳轉(zhuǎn)到空白頁

點擊添加,出現(xiàn)空白頁

但是查看自己的數(shù)據(jù)庫發(fā)現(xiàn)注冊是成功的

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

可以發(fā)現(xiàn)出錯原因在于EmpeeMapper文件的insertEmpee方法,而且是返回值類型的錯誤

檢查EmpeeMapper:

我使用的是Empee類型的返回值類型,而我的Controller文件中并沒有寫他的返回值

解決方法:把EmpeeMapper文件的insertEmpee方法修改為void類型

添加成功并且成功跳轉(zhuǎn)


我還在網(wǎng)上看見另一種解決方法,是修改為int類型,經(jīng)過驗證確實可行

由于之后沒有進行其他操作,因此不清楚這樣做會對之后的操作是否有影響,總之還是一步一個腳印的改下去吧

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

柳河县| 象州县| 鹤壁市| 玉田县| 夏河县| 毕节市| 筠连县| 毕节市| 拜泉县| 阿荣旗| 沙湾县| 鄂州市| 霍林郭勒市| 鄄城县| 肇州县| 叙永县| 朝阳县| 西畴县| 鞍山市| 易门县| 安泽县| 吉首市| 凤翔县| 襄樊市| 闽清县| 佛山市| 泰宁县| 长丰县| 兖州市| 上思县| 平泉县| 肥乡县| 班玛县| 兴化市| 永康市| 姜堰市| 龙门县| 同心县| 绵竹市| 怀柔区| 留坝县|