JDBC
文章平均质量分 89
MySQL_JDBC的下载网站:https://dev.mysql.com/downloads/connector/j/
博_采_众_长
理论与实践并行!
展开
-
JDBC和MyBatis防止SQL注入攻击的原理
文章目录JDBCMyBatisJDBC使用Statement执行查询语句的时候 :比如要执行用户名 密码登录验证的sql语句 经常要输入 String sql = " select * from login where name=’ " +name+ " ’ and pwd = ’ " +pwd+ " ’ ";这时候如果用户输入的密码是 ’ or ‘1’ = '1这时候 整条输出语句可以拼装为 select * from login where name=‘xx’ and pwd =’转载 2022-01-26 12:20:32 · 323 阅读 · 0 评论 -
关于mysql 8.0连接JDBC中各种错误的汇总
首先第一种错误:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server.这个错误是由驱动和数据库版本不一致造成的。我的数据库是mysql8.0但是使用了mysql-connector-java-5.1.38.jar这个驱动。所以会报这个错误。解决方法:将驱动替换为相应mysql8.0版本的驱动。我的驱动是mysql-con转载 2020-07-28 22:30:02 · 407 阅读 · 0 评论 -
JDBC - 第1章:JDBC概述
JDBC概述1 数据的持久化持久化(persistence):把数据保存到可掉电式存储设备中以供之后使用。大多数情况下,特别是企业级应用,数据持久化意味着将内存中的数据保存到硬盘上加以”固化”,而持久化的实现过程大多通过各种关系数据库来完成。持久化的主要应用是将内存中的数据存储在关系型数据库中,当然也可以存储在磁盘文件、XML数据文件中。2 Java中的数据存储技术在Java中,数据库存取技术可分为如下几类:JDBC直接访问数据库JDO (Java Data Object )技术第三原创 2020-07-29 17:32:41 · 158 阅读 · 0 评论 -
JDBC - 第2章:获取数据库连接
获取数据库连接1 要素一:Driver接口实现类1.1 Driver接口介绍java.sql.Driver 接口是所有 JDBC 驱动程序需要实现的接口。这个接口是提供给数据库厂商使用的,不同数据库厂商提供不同的实现。在程序中不需要直接去访问实现了 Driver 接口的类,而是由驱动程序管理器类(java.sql.DriverManager)去调用这些Driver实现。Oracle的驱动:oracle.jdbc.driver.OracleDrivermySql的驱动: com.mysql.jd原创 2020-07-29 18:07:51 · 120 阅读 · 0 评论 -
JDBC - 第3章:使用PreparedStatement实现CRUD操作
使用PreparedStatement实现CRUD操作1 操作和访问数据库数据库连接被用于向数据库服务器发送命令和 SQL 语句,并接受数据库服务器返回的结果。其实一个数据库连接就是一个Socket连接。在 java.sql 包中有 3 个接口分别定义了对数据库的调用的不同方式:●Statement:用于执行静态 SQL 语句并返回它所生成结果的对象。●PrepatedStatement:SQL 语句被预编译并存储在此对象中,可以使用此对象多次高效地执行该语句。●CallableStateme转载 2020-07-29 19:41:46 · 271 阅读 · 0 评论 -
JDBC - 第4章 操作BLOB类型字段
操作BLOB类型字段1 MySQL BLOB类型MySQL中,BLOB是一个二进制大型对象,是一个可以存储大量数据的容器,它能容纳不同大小的数据。插入BLOB类型的数据必须使用PreparedStatement,因为BLOB类型的数据无法使用字符串拼接写的。MySQL的四种BLOB类型(除了在存储的最大信息量上不同外,他们是等同的)实际使用中根据需要存入的数据大小定义不同的BLOB类型。需要注意的是:如果存储的文件过大,数据库的性能会下降。如果在指定了相关的Blob类型以后,还报错:xxx转载 2020-07-30 19:58:49 · 116 阅读 · 0 评论 -
JDBC - 第5章 批量插入
批量插入1 批量执行SQL语句当需要成批插入或者更新记录时,可以采用Java的批量更新机制,这一机制允许多条语句一次性提交给数据库批量处理。通常情况下比单独提交处理更有效率JDBC的批量处理语句包括下面三个方法:addBatch(String):添加需要批量处理的SQL语句或是参数;executeBatch():执行批量处理语句;clearBatch():清空缓存的数据通常我们会遇到两种批量执行SQL语句的情况:多条SQL语句的批量处理;一个SQL语句的批量传参;2 高效的批量插转载 2020-07-30 20:16:54 · 119 阅读 · 0 评论 -
JDBC - 第6章: 数据库事务
批量插入1 数据库事务介绍事务:一组逻辑操作单元,使数据从一种状态变换到另一种状态。事务处理(事务操作): 保证所有事务都作为一个工作单元来执行,即使出现了故障,都不能改变这种执行方式。当在一个事务中执行多个操作时,要么所有的事务都被提交(commit),那么这些修改就永久地保存下来;要么数据库管理系统将放弃所作的所有修改,整个事务**回滚(rollback)**到最初状态。为确保数据库中数据的一致性,数据的操纵应当是离散的成组的逻辑单元:当它全部完成时,数据的一致性可以保持,而当这个单元中的一部原创 2020-07-30 21:40:39 · 108 阅读 · 0 评论 -
JDBC - 第7章:DAO及相关实现类
DAO及相关实现类●DAO:Data Access Object访问数据信息的类和接口,包括了对数据的CRUD(Create、Retrival、Update、Delete),而不包含任何业务相关的信息。有时也称作:BaseDAO●作用:为了实现功能的模块化,更有利于代码的维护和升级。●书城项目中DAO使用的体现:【BaseDAO.java】package com.atguigu.bookstore.dao; import java.lang.reflect.ParameterizedType转载 2020-07-30 22:30:04 · 138 阅读 · 1 评论 -
JDBC - 第8章:数据库连接池
数据库连接池1 JDBC数据库连接池的必要性原创 2020-07-31 17:41:38 · 143 阅读 · 0 评论 -
JDBC - 第9章:Apache-DBUtils实现CRUD操作
Apache-DBUtils实现CRUD操作1 Apache-DBUtils简介●commons-dbutils 是 Apache 组织提供的一个开源 JDBC工具类库,它是对JDBC的简单封装,学习成本极低,并且使用dbutils能极大简化jdbc编码的工作量,同时也不会影响程序的性能。●API介绍:org.apache.commons.dbutils.QueryRunnerorg.apache.commons.dbutils.ResultSetHandler工具类:org.apache.c原创 2020-07-31 19:05:39 · 137 阅读 · 0 评论