public static int insert(int id,String name,String password){
PreparedStatement st = null;
ResultSet rs = null;
Connection conn =null;
try {
conn = JdbcUtil.getConnection();
conn.setAutoCommit(false);// 更改JDBC事务的默认提交方式
String sql = "INSERT INTO fortest VALUES (?,?,?)";
st = conn.prepareStatement(sql);
st.setInt(1, id);
st.setString(2, name);
st.setString(3, password);
st.executeUpdate();
conn.commit();//提交JDBC事务
conn.setAutoCommit(true);// 恢复JDBC事务的默认提交方式
return 1;
} catch (SQLException e) {
// TODO Auto-generated catch block
conn.rollback();→→→→→→→→→→→→→→→→这里报错
e.printStackTrace();
return -1;
}
}
------解决思路----------------------
throws Exception
------解决思路----------------------
错误的内容是什么?
一般得加上非空判断
if(conn!=null) {
conn.rollback();
}
------解决思路----------------------
Unhandled exception type SQLException的意思是:还有没有被处理的异常 SQLException
我复制你的代码进myeclipse都报错的
conn.rollback();有异常没有被处理
正确代码是:
------解决思路----------------------
楼上正确.....
------解决思路----------------------
哦,刚弄明白问题原来是编译时报红(IDE给的警告)而不是运行时报错呀
推荐阅读一下下面这篇文章
http://bbs.bccn.net/thread-442283-1-1.html
PS:
1)我这个人比较懒,爱总结一下问题,以后遇到相同问题直接发链接
2)发帖回帖太多了,自己以前好不容易写的东西都很难快速找到,所以有的时候发些外链,不好意si了
3)要是谁告诉我CSDN有没有类似功能,能很快找到以前自己发的内容【比如回答问题时,参考直接回答XX贴XX楼】这样的功能,就造福于我,造福于CSDN版友了……