一,本章目标
掌握PreparedStatement接口的工作原理
可以使用PreparedStatement进行数据库的更新以及查询操作
二,具体内容
此类是Statement的子类。
使用Statement操作的时候,肯定要执行的是一条完整的sql语句,执行之前是使用Connection直接创建的。
Connection接口:
PrepareStatement prepareStatement() throws SQLException
通过以上方法可以得到一个PreapredStatement的一个接口实例。
之后使用一系列的setXxx方法设置内容。如果执行更新操作的话,则会返回更新数据的记录数。
注意点:关于日期的输入问题,正常情况下,都使用java.util.Date表示日子,但是在PreparedStements使用日期则要使用java.sql.Date。
实例操作代码如下:
既然可以通过此接口进行更新操作,那么也可以通过此接口进行查询操作(模糊查询)。
注意:以上代码在视频介绍中可以正常运行,但是我重新再打一次的时候编译没通过(没有解决)。
问题来了。在开发中到底使用PreapreStatement还是使用Statement接口操作呢?
实际上在开发中是不会有人使用Statement接口的,因为其实采用拼凑的SQL语句形式,这样一来可能造成SQL注入漏洞
三,总结
PreparedStatement的基本工作原理,先占位,再插入数据
开发尽量使用PreparedStatement接口来完成。