DataBaseConnectionPool: 数据库连接池 - 作用: 是将连接重用,避免了频繁开关连接导致的资源浪费,从而提高执行效率 <img src="day03.assets/image-20220905165415313.png" alt="image-20220905165415313" style="zoom: 50%;" /> - 如何使用数据库连接池? - 在pom.xml里面添加数据库连接池的依赖 ,从苍老师文档服务器中找到依赖 - 相关代码: - - ```java //创建数据库连接池 DruidDataSource dds = new DruidDataSource(); //设置连接数据库的信息 dds.setUrl("jdbc:mysql://localhost:3306/empdb?characterEncoding=utf8&serverTimezone=Asia/Shanghai&useSSL=false"); dds.setUsername("root"); dds.setPassword("root"); //设置初始连接数量 dds.setInitialSize(3); //设置最大连接数量 dds.setMaxActive(5); //获取连接对象 异常抛出 Connection conn = dds.getConnection(); System.out.println("连接:"+conn);
### SQL注入 - 往传值的地方传递进来一些SQL语句的关键字,导致原有SQL语句的逻辑发生改变,这个过程称为SQL注入 - SQL注入漏洞是后果非常严重的一个安全隐患, 工作中一定不能出现. ### 带有预编译效果的执行SQL语句的对象PreparedStatement - 预编译指的是在执行SQL语句之前,创建PreparedStatement对象时对SQL语句进行编译, 此时会对SQL语句的语法格式进行校验,并且对SQL语句的语义进行锁死操作, 之后用户输入的内容只能以值的形式添加到SQL语句中, 这样的话不管用户输入的内容是什么都不会影响原有SQL语句的逻辑.从而避免了出现SQL注入的问题.