equals和==一点非常容易忽略的问题

从数据库取数据比较

今天用Servlet和Hibernate做了一个简单的注册和登录程序,期间在登录的时候,比对我jsp页面输入的数据和数据库取出来的数据的时候,用了equals比对用户名,用==比对了输入的密码,但是这样一直出错,我也知道注重引用值和属性值的比较,没有出这个基础的错误。但又是为什么同样的字符串和同样的数值比对报的是false。抓狂了一天,最后发现了。。。很无语
原来,字符串从数据库取出来的时候,有些带了空格,这个你看不见的,明明一样的字符,为什么死活判断为不一样,就是带了空格,所以捏,最后从数据库取出来的字符串后面调用一下trim()函数,消除空字符
然后是密码的判断,我简单做了这个登录注册程序,没有设置太复杂的类型,所以把密码设置为Integer类型,但是,恰恰就是这里,Integer类型是不能超过127,所以你的密码是1234的话就很容易出错了,所以捏,数据类型要看看范围鸭,好好注意基础才行,明天把自己做的那个登录注册给大家参考参考,作为servlet和Hibernate综合基础小练的项目,先睡了哈哈,希望这个发型能帮到遇到这个问题的小伙伴们。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值