微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JDBC之创建PreparedStatement

JDBC之创建PreparedStatement

创建PreparedStatement

通过调用 Connection 对象的 preparedStatement() 方法获取 PreparedStatement 对象;PreparedStatement 接口是 Statement 的子接口,它表示一条预编译过的 sql 语句。

Java代码

	String sql = "update user set name=? where id=?";
	PreparedStatement statement = connection.prepareStatement(sql);

动态传参

PreparedStatement 对象所代表的 sql 语句中的参数用问号(?)来表示;调用 PreparedStatement 对象的 setXxx() 方法来设置这些参数;setXxx() 方法有两个参数,第一个参数是要设置的 sql 语句中的参数的索引(从 1 开始),第二个是设置的 sql 语句中的参数的值;其中Xxx指的是数据类型。

	String sql = "update user set name=? where id=?";
	PreparedStatement statement = connection.prepareStatement(sql);
	statement.setString(1, "jackma");
	statement.setLong(2, 1);

PreparedStatement vs Statement

PreparedStatement可以防止sql注入攻击;并且PreparedStatement会对sql语句进行预编译,再次执行相同的语句不需要再次进行编译,可以提高执行效率。

通过PreparedStatement执行sql语句

	//获取数据库连接
	Connection connection = JDBCTools.getConnection();
	//创建preparedStatement
	String sql = "update user set name=? where id=?";
	PreparedStatement statement = connection.prepareStatement(sql);
	//填充占位符参数
	statement.setString(1, "jackma");
	statement.setLong(2, 1);
	//执行更新语句
	int affectedRows = statement.executeUpdate();

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐