对用户输入的密码进行MD5加密了,对数据库里的密码也进行md5加密了,但是却报空指针异常 该怎么办

dao层:

img

xml:

img

service层:

img


impl层:

img


controller:

img


异常:

img


为什么会这样呢,为什么会产生空指针异常呢?难道是值没有传进去?

login这条sql的where条件不要加and password = #{password},只根据username去查,然后在service进行password对比,而且不要substring,这样可能不准

dbUser他可能是个null

判断一下是否有值再进行加密吧,写代码要规范。

1、前段传入的密码可能加密了,在你查库的时候没有找到对应的user

xml里面的login语句可能没查出值