SQL里怎么判断字段是否相符啊?
我从form里传了个String字段A到JSP文件 
 JSP里判断SQL里是否有和这个A字段一样的数据,假设SQL里有和A一样数值的B 
 我用if(A==B   ||   A.equals(B))判断为什么不起作用啊? 
 (已经确定A和B是一样的值。都是String型) 
------解决方案--------------------要用A.equals(b)
------解决方案--------------------但IF语句好象就是进不去?你确定没有进去吗?在if的里面 end=true 的前面再System.out一下
------解决方案--------------------if(username==username2 || username.equals(username2)){ 
             end = true; 
   } 中:把username == username2条件去掉,即: 
  if(username.equals(username2)){ 
             end = true; 
   } 不可以的话,那就只能期待高手了。原因的话 2楼的JCMAN()说的没错,是对象的比较 
------解决方案--------------------你试一下打出两个String的长度看看相同不
------解决方案--------------------A==B是判断是否为同一个对象, 
 而A.equals(B)是判断值是不是相等 
 最好这么写 
 A.trim().equals(B.trim())
------解决方案--------------------难道关注到今天也没人解决吗?那就继续关注了 
 trim 去掉空格吧
------解决方案--------------------trim(),去掉空白 
   估计也是这方面的原因
------解决方案--------------------if(username==username2 && username.equals(username2)){ 
             end = true; 
   }
------解决方案--------------------while(rs.next()){ 
             username2 = rs.getString( "username "); 
             if(username==username2 || username.equals(username2)){ 
             end = true; 
             }                 
         } 
 你确定WHILE语句进去了? 
------解决方案--------------------如果已经从数据库里查出了该字段,就须a.equals(b),如果要写sql语句那么在sql语句里直接a=b判断就行了。
------解决方案--------------------select count(*) from table where 字段=你输入的 
------解决方案--------------------select *from table where 字段=你输入的 and 字段=你输入的 
 判断是否有结果集吗?
------解决方案--------------------主要考虑大小写,空白符,全角半角(尤其是中间有空格的情况)...
------解决方案--------------------while(rs.next()){ 
             username2 = rs.getString( "username "); 
             if(true){ 
             end = true; 
             }                 
         } 
 确定一下,进入while没,如果进入,那就是像malligator(不能再整天泡在CSDN里了!) 说的那样了。
------解决方案--------------------java里头==是比较内存地址,除了数值类型一般都不这么比的