现在的问题已经拿红色的圈标出来了,userMapper.login(user)这里面的user用debug
显示是有值的,但是将这边的值传递给User userDb以后,userDb用debug显示就是
null值,这是为什么,写了好几次了,在进行给值的时候,是要进行一下 (user)强转的,
但是这次写就没有提示让我进行强转,中间的(user)是自己加上去的。。为什么值传递
不过去呢?报空指针异常。。(这个空指针解决了,但是页面又跳转不聊了。。图片都放出来了)
谢谢热情的亲们,所有的问题都解决了,空指针异常是数据库中密码用MD5加密生成
加密文生错了,已经改正,后来的跳转跳不了是应为Controller中没有写@ResposBody
我前端页面用的ajax后面必须有@ResposBody把这个注解给丢了。。。谢谢亲们!!
按楼主说的情况,问题的关键在于userMapper.login这个方法啊!返回的值是什么类型? 为啥没有返回? 返回了能不能强转?。。。。。我认为是解决userMapper.login方法的问题,而不是解决楼主贴的这些代码!!!!!楼主没贴userMapper代码是有什么特殊原因吗? 看结构应该是看看对应xml里面的那个login配置!!!
那就debug追踪userMapper.login 这个方法,100% 是这个方法执行过后返回空值,
首先你这并不是直接把user的值赋给userDb,而是userMapper.login(user) 这个方法的返回值赋值给userDb, 不知道你这个方法里是干啥的
userMapper.login 这个方法里面可能有问题。
首先你这并不是直接把user的值赋给userDb,而是userMapper.login(user) 这个方法的返回值赋值给userDb, 这个看名字是个查询用户的方法,那就是没有查到用户喽,所以返回空啊
第一查看userMapper.login(user)执行的sql是否返回值
第二查看userDao是否成功注入service,看看dao上是否添加@Repository ,service里面@autowire是否添加
你的userMapper是按user的条件区数据库中去查询,当然可能会查询不到结果。
还有你userMapper.login的返回值类型是什么呢
是不是没有注入值,所以导致的空指针
这时controller 层,,为什么不走service而直接走的 mapper
请断点调试,一步步调试就行了