3 回答

TA贡献1772条经验 获得超8个赞
1、字符串判断内容相等用.equals();如果是比较是否是同一个对象(即内容和引用相同),则用==
2、passwordD= rs.getString(2); 改为:passwordD= rs.getString("passwordD");
persontyDD= rs.getString(3);改为:persontyDD= rs.getString("persontyDD");
因为你的数据库中字段的顺序和你getString后面的数字不一致。
写了个小程序,你看看。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class LCP_TEST extends Test{
public static void main(java.lang.String[] args) {
String url = "jdbc:oracle:thin:@100.100.100.129:1521:auxoms";
String user = "osm";
String password = "osm";
try {
Class.forName("oracle.jdbc.OracleDriver");
Connection conn = DriverManager.getConnection(url, user, password);
Statement stmt = conn.createStatement();
String sql = " select 'aa' username,'123456' passwordD from dual";
ResultSet rs = stmt.executeQuery(sql);
while (rs.next()) {
String username = rs.getString("username");
String passwordD = rs.getString("passwordD");
System.out.println("username:"+username);
System.out.println("passwordD:"+passwordD);
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}

TA贡献1995条经验 获得超2个赞
“==”肯定是不行的,因为两个字符串的地址可能不相同,应该用.equals(),不知是否是您写的有问题,其实更简单的是不用单独赋值一个fu,直接.equals("超级用户")就行了,你先试试。
添加回答
举报