今天帮一个同事看一个问题。估计还是新手(过去看了才知道的);
他似乎在写一个毕业设计.看了下是一个类似学校的什么成绩啊什么的管理系统;
过去看了下.他的基本结构是简单的SERVLET+MYSQL;没有使用其他的架构之类的。
我过去看了代码;
基本类似这个段(链接方法):
/**
* 获取数据库连接
* */
public static Connection getConnection() {
String url = "jdbc:mysql:172.0.0.1:3306/test";
String username = "root";
String password = "1234";
Connection con = null;
try {
con = DriverManager.getConnection(url, username, password);
} catch (Exception e) {
e.printStackTrace();
}
return con;
}
查询方法:
Connection con = getConnection();
PreparedStatement ps = null;
ResultSet rs = null;
String sql = "select * from Basic where id =?";
try {
ps = con.prepareStatement(sql);
ps.setInt(1,id)
rs = ps.executeQuery();
if (null != rs && rs.next()) {
generatedKey = rs.getInt("id");
}
} catch (Exception e) {
e.printStackTrace();
} finally {
close(rs, ps, con);
}
问题如下:
java.sql.SQLException: Column ‘id’ not found.
仔细看了下 没什么问题.百度了以下也都是正常的。数据库 有此表 此字段。
搞了很久自己看了觉得会不会是JAR包的问题或者引用出错。然后我找了一下.这货居然用的mysql connction 3 的jar包。
我马上下了一个mysql connction 5的.换上去问题马上解决.
真乃新手伤不起啊。用着N年前的JAR包.写着最新的代码.