JDBC
ZikM_0221
本人也在博客园中有自己博客:https://www.cnblogs.com/James-221/
展开
-
JDBC 事务处理
1 数据库事务介绍事务:一组逻辑操作单元,使数据从一种状态变换到另一种状态。事务处理(事务操作):保证所有事务都作为一个工作单元来执行,即使出现了故障,都不能改变这种执行方式。当在一个事务中执行多个操作时,要么所有的事务都被提交(commit),那么这些修改就永久地保存下来;要么数据库管理系统将放弃所作的所有修改,整个事务**回滚(rollback)**到最初状态。为确保数据库中数据的一致性,数据的操纵应当是离散的成组的逻辑单元:当它全部完成时,数据的一致性可以保持,而当这个单元中的一部分操作失败,原创 2020-06-05 14:33:59 · 132 阅读 · 0 评论 -
JDBC 批量高效插入数据
1.批量执行SQL语句当需要成批插入或者更新记录时,可以采用Java的批量更新机制,这一机制允许多条语句一次性提交给数据库批量处理。通常情况下比单独提交处理更有效率JDBC的批量处理语句包括下面三个方法:addBatch(String):添加需要批量处理的SQL语句或是参数;executeBatch():执行批量处理语句;clearBatch():清空缓存的数据通常我们会遇到两种批量执行SQL语句的情况:多条SQL语句的批量处理;一个SQL语句的批量传参;2 .高效的批量插入举例原创 2020-06-04 12:02:10 · 1433 阅读 · 0 评论 -
JDBC 操作BLOB类型字段
MySQL BLOB类型MySQL中,BLOB是一个二进制大型对象,是一个可以存储大量数据的容器,它能容纳不同大小的数据。插入BLOB类型的数据必须使用PreparedStatement,因为BLOB类型的数据无法使用字符串拼接写的。MySQL的四种BLOB类型(除了在存储的最大信息量上不同外,他们是等同的)实际使用中根据需要存入的数据大小定义不同的BLOB类型。需要注意的是:如果存储的文件过大,数据库的性能会下降。如果在指定了相关的Blob类型以后,还报错:xxx too large,那么原创 2020-06-04 11:57:57 · 222 阅读 · 0 评论 -
JDBC 实现对数据库表的增删查操作(案例)
1、创立数据库表 examstudent,表结构如下:2、向数据表中添加如下数据:3、创建Student类定义属性名称package com.atguigu4.exer;import javax.sound.midi.MidiDevice.Info;/* * Type: IDCard: ExamCard: StudentName: Location: Grade: */public class Student { private int flowID;//流水号 private原创 2020-06-03 22:19:28 · 1079 阅读 · 0 评论 -
JDBC练习1 从控制台向数据库的表customers中插入一条数据
从控制台向数据库的表customers中插入一条数据:表结构如下:代码示例:package com.atguigu4.exer;import java.sql.Connection;import java.sql.PreparedStatement;import java.util.Scanner;import org.junit.Test;import com.atguigu3.util.JDBCUtils;/* * * */public class Exer1Te原创 2020-06-03 19:07:38 · 1110 阅读 · 1 评论 -
JDBC PreparedStatement解决SQL注入问题
PreparedStatement解决SQL注入问题package com.atguigu2.statement.crud;import java.lang.reflect.Field;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.ResultSetMetaData;import java.util.ArrayList;import原创 2020-06-03 18:31:05 · 214 阅读 · 0 评论 -
JDBC PreparedStatement针对不同表的通用查询操作
PreparedStatement针对不同表的通用查询操作:package com.atguigu3.preparedstatement.crud;import java.lang.reflect.Field;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.ResultSetMetaData;import java.util.Arra原创 2020-06-03 13:14:19 · 327 阅读 · 0 评论 -
JDBC 针对数据库表的查询操作(2)
相对于第一种更加完善1、以oreder表为例2、首先创建Order类,把要获取的数据字段封装在一个类的对象中(Order)package com.atguigu3.bean;import java.sql.Date;public class Order {//注意在Java代码中属性名是不允许带有下划线的 private int orderId; private String orderName; private Date orderDate; //空参构造器 public Or原创 2020-06-03 09:58:49 · 317 阅读 · 0 评论 -
JDBC 针对数据库表的查询操作(1)
1、针对数据库表的查询操作(推荐2)1、以数据库表customers为例2、把要获取的数据字段封装在一个类的对象中(Customer)package com.atguigu3.bean;import java.sql.Date;/* * ORM编程思想(object relational mapping): * 一个数据表对应一个Java类 * 表中的一记录对应Java类的一个对象 * 表中的一个字段对应Java类的一个属性 * */public class Customer原创 2020-06-02 18:32:39 · 483 阅读 · 0 评论 -
JDBC PreparedStatement实现通用的增删改操作
1、PreparedStatement实现通用的增删改操作package com.atguigu2.preparedstatement.crud;/*使用preparedstatement来替换Statement,实现对数据表的增删改查 * * 增删改;查 * */import java.io.InputStream;import java.sql.Connection;import java.sql.Date;import java.sql.DriverManager;impo原创 2020-06-02 11:15:21 · 202 阅读 · 0 评论 -
JDBCUtils 封装数据库连接和关闭操作
JDBCUtils 封装数据库连接和关闭操作1、创建一个工具类(专门获取数据库连接)package com.atguigu3.util;import java.io.InputStream;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.sql.Statement;import java.util.Properties;/** * 操作原创 2020-06-02 10:43:05 · 287 阅读 · 0 评论 -
JDBC——获取数据库链接的5种方式
JDBC链接数据库有五种方式,在这里推荐第五种方式一:public class ConnectionTest { //方式1: @Test public void testConnection1() throws SQLException { //获取Driver的实现类对象 Driver driver=new com.mysql.jdbc.Driver(); //jdbc:mysql:协议 //localhost:ip地址 //3306:默认mysql端口号 //test原创 2020-06-01 13:13:47 · 594 阅读 · 0 评论 -
JDBC PrepareStatement实现表数据的添加操作
PrepareStatement实现表数据的添加操作:PreparedStatement的使用PreparedStatement介绍可以通过调用 Connection 对象的 preparedStatement(String sql) 方法获取 PreparedStatement 对象PreparedStatement 接口是 Statement 的子接口,它表示一条预编译过的 SQL 语句PreparedStatement 对象所代表的 SQL 语句中的参数用问号(?)来表示,调用 Prepa原创 2020-06-01 19:13:15 · 1006 阅读 · 0 评论