JDBC
l JDBC是一个接口,不同公司使用不同的数据库,由JDBC提供统一建立连接发送回执数据库语言,数据库厂商提供相应的jar包即满足了公司操作的要求。
l JDBC六步:1、手动加载驱动(导入jar包、addpath、class.forName():加载字节码文件到JVM) 2、连接数据库(DriverManager.getConnection()) 3、获得发送数据库语言工具(statement、preparestatement) 4、执行数据库语言(statement.executeQuery、statement.executeUpdate) 5、处理结果(resultset 逻辑判断或分装展示) 6、回收资源(按先开后关顺序.close())
l ResultSet rs=statement.executeUpdate(sql); rs.next()代表有数据
l JDBC中statement和preparedstatement的区别:preparedstatement是预编译语言,更高效;preparedstatement可以防止SQL注入,更安全;preparedstatemet支持? 更灵活
l JDBC中大数据量解决办法:最好是用SQL语句分页,每次显示部分数据,select *from(select*,rownum rn from ...)where rn between”+pagesize*(pageNum-1)”and”+pagesize*pageNum”
说一说数据库连接池工作原理和实现原理:工作原理:服务器启动时会建立一定数量的池连接,并一直维持不少于此数目的池连接,客户端程序需要建立连接时,池驱动程序会返回一个未使用的池连接并标记为忙,若此时没有空闲池连接则会新建一定数量的池连接,数量由配置决定,使用完池连接后会池驱动程序会将此池连接标记为空闲。实现原理:返回connection是原始connection的代理,当调用代理的connection时把他代理的connection放回到连接池中,等待下一次复用。