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("超級用戶")就行了,你先試試。
添加回答
舉報