[英]Java Servlet & MySQL
這段代碼出了什么問題? 它給了我“品牌”= null。
public String getBrand(@WebParam(name = "regNr") String regNr) throws SQLException {
String brand=null;
Connection con;
Statement st;
ResultSet rs;
String url = "jdbc:mysql://db4free.net:3606/cars";
String user = "cars";
String password = "";
try {
con = (Connection) DriverManager.getConnection(url, user, password);
st = (Statement) con.createStatement();
rs = st.executeQuery("SELECT * FROM Cars WHERE nr= '" + regNr + "'");
if (rs.next()) {
brand=rs.getString("brand");
}
} catch (SQLException ex) {
}
return brand;
}
我想從數據庫中顯示品牌的價值。 這是連接問題嗎?
要么查詢沒有返回任何行,要么SQLException
。 在catch塊中添加一些內容以發現異常。
順便說一句:你應該在ResultSet
, Statement
和Connection
實例上調用close()
。 我建議把這些調用放在finally
塊中。 此外,您的代碼容易受到稱為SQL注入的攻擊。 使用帶參數的PreparedStatement
來修復此問題。
有可能是在代碼中的異常,但你看不到,因為它catch
與里面什么都沒有。 在其中添加異常日志,以顯示異常並查看問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.