ibatis中select password('string')引起的bug
这个我应用于项目修改密码的操作
原密码(originPassword),新密码(newPassword),确认密码(confirmPassword),书入原密码和新密码后,系统先取到原密码,经过select password('String')加密后与原数据库密码比较
,如果一致说明原密码输入正确,然后才能去修改成为新密码。
目前问题,第一次修改密码成功后,再次变换一个新密码去修改密码会出现BUG : java.sql.SQLException: Column 'password('第一次的密码')' not found.
后来考虑可能由于Ibatis自身的问题,可能将password('String')栏目缓存起来,但下一次更新密码的时候,里面的String变了,导致Column 'password('第一次的密码')' not found.
在select password('string') 后添加as encrypass之后,以上问题就不会再出现了,以此推断,可能就是由于IBATIS自身问题,变换成select password('string') as encrypass后,
不管密码如何换,都将被以encrypass密码符的形式返回给程序。
原密码(originPassword),新密码(newPassword),确认密码(confirmPassword),书入原密码和新密码后,系统先取到原密码,经过select password('String')加密后与原数据库密码比较
,如果一致说明原密码输入正确,然后才能去修改成为新密码。
目前问题,第一次修改密码成功后,再次变换一个新密码去修改密码会出现BUG : java.sql.SQLException: Column 'password('第一次的密码')' not found.
后来考虑可能由于Ibatis自身的问题,可能将password('String')栏目缓存起来,但下一次更新密码的时候,里面的String变了,导致Column 'password('第一次的密码')' not found.
在select password('string') 后添加as encrypass之后,以上问题就不会再出现了,以此推断,可能就是由于IBATIS自身问题,变换成select password('string') as encrypass后,
不管密码如何换,都将被以encrypass密码符的形式返回给程序。
成长的乐趣,在于分享!
|