public boolean insert(Student student) throws Exception
{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql:127.0.0.1:3306/test","root","");
PreparedStatement ps = con.prepareStatement("insert into student(name,password,age) values(?,?,?);");
ps.setString(1, student.getName());
ps.setString(2, student.getPassword());
ps.setInt(3, student.getAge());
ps = con.prepareStatement("select * from student where name='?'");
ps.setString(1, student.getName());
ResultSet rs = ps.executeQuery();
if(rs.next())
{
return true;
}
return false;
}
{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql:127.0.0.1:3306/test","root","");
PreparedStatement ps = con.prepareStatement("insert into student(name,password,age) values(?,?,?);");
ps.setString(1, student.getName());
ps.setString(2, student.getPassword());
ps.setInt(3, student.getAge());
ps = con.prepareStatement("select * from student where name='?'");
ps.setString(1, student.getName());
ResultSet rs = ps.executeQuery();
if(rs.next())
{
return true;
}
return false;
}
解决方案 »
- JAVA 树 叶子节点的展开
- parseDouble的问题
- java 程序里如何播放swf文件
- java小问题
- 奇怪的编码!!jsp页面用gbk编码, 被编译后报错? 奇怪!!!!!!!!!! 奇怪!!!!!!!!!!!!!!
- 求救!!!使用泛型和反射将结果集保存为bean集合
- 如何在hibernate3中,根据*.hbm.xml文件生成POJO类?
- 请您不吝赐教
- 小弟 参照java.sun.com上的步骤做divelog时,在编译时出错了,大家帮忙啊
- Jbuilder6里的cvs如何配置?我用pserver为什么总是连不上?
- 及时结贴是吧?大家一般多少天结贴
- 关于jCheckBox选择的问题
2. INSERT 语句没有执行;
3. SELECT 中的“?”不需要单引号(不过加了我也没有试过是否对不对);
4. ResultSet, PreparedStatement, Connection 都没有关,实际上做插入用不到期 ResultSet。修改后的程序如下(由于没有编译器,没有办法保证程序的正确性,参考一下吧):public boolean insert(Student student) {
Connection con = null;
PreparedStatement ps = null;
int updateRows = 0;
try {
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test","root","");
ps = con.prepareStatement("insert into student(name,password,age) values(?,?,?)");
ps.setString(1, student.getName());
ps.setString(2, student.getPassword());
ps.setInt(3, student.getAge());
updateRows = ps.executeUpdate();
} catch (ClassNotFoundException e1) {
e1.printStackTrace();
} catch (SQLException e2) {
e2.printStackTrace();
} finally {
try {
ps.close();
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(updateRows > 0 ) {
return true;
} else {
return false;
}
}
import java.sql.DriverManager;public class ConnectionFactory { private ConnectionFactory(){
} public static Connection getConnection() {
Connection con = null;
try {
Class.forname("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://127.0.0.1:3306/test";
String username = "root";
String password = "";
con = DriverManager.getConnection(url, username, password);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return con;
}
}在代码中就可以改为 con = ConnectionFactory.getConnection(); 这样子了。如果要做得更好的话,可以将 getConnection() 写成单例,保证只有一个 Connection 在活动中,这样在单用户状态下可以提高连接数据库的效率的,但是这需要一定的技巧,比如:Connection 的 close() 问题等等,这个就留给楼主自己去考虑了喔~~~~~