84669 person learning
152542 person learning
20005 person learning
5487 person learning
7821 person learning
359900 person learning
3350 person learning
180660 person learning
48569 person learning
18603 person learning
40936 person learning
1549 person learning
1183 person learning
32909 person learning
java 中声明PreparedStatement类时出错(导入包:java.sql.*):The resource type PreparedStatement does not implement java.lang.AutoCloseable
小伙看你根骨奇佳,潜力无限,来学PHP伐。
PreparedStatement的原型是public interface PreparedStatement extends Statement ,是一个接口,你需要实现所有的接口啊
需要你提供出错行的代码才能确定。很可能你有这么几行代码:
try(PreparedStatement pstmt = conn.prepareSatement("select ...");){...}
这里你使用了Java最近版本加入的try-with-resource语法。这个语法要求小括号内定义的变量是先Closeable接口。如果你用的PreparedSatement所在的类库比较旧,可能没有实现这个接口。
可能你使用的语法超出了你引用的JRE类库的版本。
一看报错就是用了jdk7的try with resources的语法,try括号里面的资源得是实现了AutoCloseable,而PrepareStatement没有实现AutoCloseable接口,换种用法吧,try-finally
PreparedStatement的原型是public interface PreparedStatement extends Statement ,是一个接口,你需要实现所有的接口啊
需要你提供出错行的代码才能确定。很可能你有这么几行代码:
try(
PreparedStatement pstmt = conn.prepareSatement("select ...");
){
...
}
这里你使用了Java最近版本加入的try-with-resource语法。这个语法要求小括号内定义的变量是先Closeable接口。如果你用的PreparedSatement所在的类库比较旧,可能没有实现这个接口。
可能你使用的语法超出了你引用的JRE类库的版本。
一看报错就是用了jdk7的try with resources的语法,try括号里面的资源得是实现了AutoCloseable,而PrepareStatement没有实现AutoCloseable接口,换种用法吧,try-finally