2 qq 39586869 qq_39586869 于 2017.09.14 13:17 提问

老是空指针异常但是找不到出异常的原因,。。。。。

图片说明

图片说明

图片说明

图片说明
图片说明
图片说明
图片说明
图片说明
图片说明
图片说明

现在的问题已经拿红色的圈标出来了,userMapper.login(user)这里面的user用debug
显示是有值的,但是将这边的值传递给User userDb以后,userDb用debug显示就是
null值,这是为什么,写了好几次了,在进行给值的时候,是要进行一下 (user)强转的,
但是这次写就没有提示让我进行强转,中间的(user)是自己加上去的。。为什么值传递
不过去呢?报空指针异常。。(这个空指针解决了,但是页面又跳转不聊了。。图片都放出来了)

谢谢热情的亲们,所有的问题都解决了,空指针异常是数据库中密码用MD5加密生成
加密文生错了,已经改正,后来的跳转跳不了是应为Controller中没有写@ResposBody
我前端页面用的ajax后面必须有@ResposBody把这个注解给丢了。。。谢谢亲们!!

10个回答

qq_33727653
qq_33727653   2017.09.14 13:32
已采纳

按楼主说的情况,问题的关键在于userMapper.login这个方法啊!返回的值是什么类型? 为啥没有返回? 返回了能不能强转?。。。。。我认为是解决userMapper.login方法的问题,而不是解决楼主贴的这些代码!!!!!楼主没贴userMapper代码是有什么特殊原因吗? 看结构应该是看看对应xml里面的那个login配置!!!

s951753852
s951753852 会不会是URL错误他那个${ctx}都包在字符串里了,应该在字符串外面吧
2 个月之前 回复
qq_33727653
qq_33727653 跳不跳转是你Controller或者页面的事情吧? 与现在的代码没关系了,楼主再仔细捋捋,还有其实我也就是个渣。。。不是大神。
2 个月之前 回复
qq_33727653
qq_33727653 你的xml结果会映射成user的啊,还强转做啥?
2 个月之前 回复
qq_39586869
qq_39586869 回复砸死接触: 大神啊,我找到错误了,是MD5加密出来的密码是错误的,我改正了但是又有个问题。。页面跳转不了了,
2 个月之前 回复
qq_33727653
qq_33727653 还奇怪一件事:为啥有强转?
2 个月之前 回复
qq_33727653
qq_33727653 还有就是楼主到底哪一行报的空指针啊? 看代码 userDb是有可能是null值的啊,这并不是报空指针的关键看起来
2 个月之前 回复
qq_33727653
qq_33727653 额,看起来好像都没错!楼主有没有某些字段或属性的大小写错了?
2 个月之前 回复
qq_39586869
qq_39586869 大神,我吧后面的代码粘贴出来了,但是我检查了好几次,后面Dao层的代码是没有错误的。。
2 个月之前 回复
u011781616
u011781616   2017.09.14 13:32

那就debug追踪userMapper.login 这个方法,100% 是这个方法执行过后返回空值,

qq_23292875
qq_23292875   2017.09.14 13:36

首先你这并不是直接把user的值赋给userDb,而是userMapper.login(user) 这个方法的返回值赋值给userDb, 不知道你这个方法里是干啥的

qq_39946652
qq_39946652   2017.09.14 13:36

userMapper.login 这个方法里面可能有问题。

huang931027
huang931027   2017.09.14 13:40

首先你这并不是直接把user的值赋给userDb,而是userMapper.login(user) 这个方法的返回值赋值给userDb, 这个看名字是个查询用户的方法,那就是没有查到用户喽,所以返回空啊

huang931027
huang931027 回复Hefei19881002: 兄弟,我后面的一部分改了啊
2 个月之前 回复
qq_23292875
qq_23292875 大胸弟你这么做合适吗
2 个月之前 回复
Mint6
Mint6   2017.09.14 13:53

第一查看userMapper.login(user)执行的sql是否返回值
第二查看userDao是否成功注入service,看看dao上是否添加@Repository ,service里面@autowire是否添加

java_1992
java_1992   2017.09.14 13:58

是不是没有注入值,所以导致的空指针

lihongbiao0610
lihongbiao0610   Rxr 2017.09.14 13:58

你的userMapper是按user的条件区数据库中去查询,当然可能会查询不到结果。
还有你userMapper.login的返回值类型是什么呢

qq_39586869
qq_39586869 大神来看看,这个解决了,但是页面调不了,控制台不报错,就是浏览器中F12显示如上信息。。。我不知道什么意思?
2 个月之前 回复
weixin_33623302
weixin_33623302   2017.09.14 14:02

这时controller 层,,为什么不走service而直接走的 mapper

qq_27582155
qq_27582155   2017.09.14 14:45

请断点调试,一步步调试就行了

Csdn user default icon
上传中...
上传图片
插入图片