JDBC数据库连接的一些问题
一、SQL传参问题
java.sql.SQLException: No value specified for parameter 5
原因:sql语句占位符跟传入的参数个数不一致 例如: String sql = “insert into tbcharge_station(station_name,device_number,province,address) values(?,?,?,?,?)”; 如上,这里只有四个参数,但是?占位符却有五个,去掉一个?即可
二、空指针问题
Exception in thread "main" java.lang.NullPointerException.
原因:
(2)没有对应的jar包 解决方法:看下有没有相应的jar包,主要版本要相对应
(3)properties配置问题 解决方法: 情况一:项目是使用maven来编写的,在maven中,classpath的根目录其实是resources文件夹,将properties文件移到resources文件夹即可 情况二:项目是普通项目,将properties文件移到src文件夹下即可 情况三:21版的IDEA第三方jar包和配置文件都应该放在resources文件夹 另外注意:“db.properties"和JDBCUtils类都是在同一个工程下,就不要写成”/db.properties",也不要写成“src/db.properties”,因为idea很奇葩,在这个地方的properties文件即使用上绝对路径也会报空指针错误
另一种解决思路:https://blog..net/overflowError/article/details/115016949?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-115016949-blog-116446028.pc_relevant_recovery_v2&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-115016949-blog-116446028.pc_relevant_recovery_v2&utm_relevant_index=1
三、连接关闭问题
java.sql.SQLException: No operations allowed after statement closed.
原因:不正常关闭或者有太多没有关闭的语句或池连接 解决方法:关闭之前没有关闭的mysql链接,或者查找是否有关闭连接的代码在启动链接之前 如: //关闭数据库 ps.close(); conn.close(); //进行数据表数据添加操作 ps.executeUpdate(); 更改为: //进行数据表数据添加操作 ps.executeUpdate(); //关闭数据库 ps.close(); conn.close();
四、下标错误
Exception in thread "main" java.lang.RuntimeException: java.sql.SQLException: Column Index out of ra
下一篇:
数据库连接查询时的注意事项