开发环境报错
用的 IDE 是 Intellij-IDEA。
Error:java: Compilation failed: internal java compiler error
解决思路和步骤:
首先尝试了把 project 的 module settings 改一下。
于是右键项目,单击open module settings
,把能改的地方都改成java8
。
改完这三个地方发现还是报错。
于是想改Intellij-IDEA的全局配置去。
第3个框不要忘了。我最开始忘了修改第三个框,结果还是报错。
修改完上面这些后,环境就OK了。
其实实际开发中,比如要求JDK至少是1.6,那么项目中很有可能是有人用jdk1.6,有人用jdk1.7。版本不一样会引起这个错误。解决方法都是如此。
try-with-resource 遇上 JDBC
public class JdbcTest {
public static void main(String[] argc) {
try {
Class.forName("com.mysql.jdbc.Driver");
try (Connection connection = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/your_db_name?characterEncoding=utf-8",
"your_username",
"your_password")){
String sql = "select * from user where username = ? ";
try (PreparedStatement ps = connection.prepareStatement(sql)) {
ps.setString(1, "王五");
try (ResultSet rs = ps.executeQuery()) {
while (rs.next()) {
System.out.println(rs.getString("id") + " " + rs.getString("username"));
}
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
注意:
注意这里有坑。
红框里面那个设置编码要注意,不然涉及到中文编码,会导致查询结果不对。
小心编码问题
同样的代码,在IDEA-community-2017.2
上和IDEA-ULTIMATE-14.1.7
上运行的结果不一致。因为前面代码中的查询中涉及到了中文,所以要很小心编码问题。