JDBC:全称是 Java database connection
JDBC是Java连接数据库的一套标准。该标准提供了大量接口,这些接口由厂商根据自身数据库的特点
做实现,由用户进行接口方法调用。用户根据接口调用方法,可以屏蔽不同数据库的差异,这样无论
连接什么数据库都是一套API。
IO流开发流程 JDBC开发流程
建立流 建立连接
操作流 执行SQL语句
关闭流 关闭连接
Statement 和 preparedStatement的区别
Statement是preparedStatement的父接口。采用Statement执行SQL语句时,由于SQL语句的值一般由用户提供,
所以只能采用拼接字符串的方式设置。这样随着值得不同,系统会做多次SQL语句的编译操作,所以效率低,
而且容易引起SQL注入。
PreaparedStatement提供占位符机制,将需要设置值得地方都用占位符表示,这样无论什么值都是一个SQL语句。
不会进行多次编译操作,效率高。而且无论值是什么,都会做字符串处理,不会引起SQL注入。
SQL注入,采用拼接字符串方式,拼接SQL语句时,如果值中有SQL语句的关键字或特殊字符,可能导致运行结果不正确,
或SQL语句的语法错误。这称为SQL注入。解决SQL注入的方法就是采用PreparedStatement代理Statement。
dao:data access object。是一种架构模式。建立实体类和数据库表做映射。也就是哪个类对应哪个表,那个属性对应哪个列。所以完成数据库操作的本质就是完成对象数据和关系数据的转换。