阶段一,jdbc

这篇博客详细介绍了如何使用Java JDBC进行数据库操作,包括创建数据库连接、执行CRUD操作,以及事务的管理和使用。此外,还提及了数据库连接池的概念以及DBUtils工具类的应用,并简单提及了批处理操作的重要性。
摘要由CSDN通过智能技术生成

1.JDBC:Java提供的一套用来操作数据库的接口

一、创建数据库连接对象

1.准备工作:

  • 确定MySQL可以正常使用

  • 确定MySQL账号和密码是正确的:root-520741

  • MySQL和导入的MySQL驱动包的版本是否匹配

2.创建对象:

  • 方式一

  • 1.创建Driver对象Driver driver = new com.mysql.jdbc.Driver()

  • 2.调用方法connect(String url, java.util.Properties info)--jdbc:mysql://localhost:3306/myemployees

  • 方式二

  • 1.创建Driver对象

  • 2.将Driver对象注册到DriverManager

  • 3.获取Connection对象

  • 方式二优化

  • 1.初始化Driver类中的静态代码块来初始化Driver对象:Class.forName(driver);

  • 2.获取Connection对象

  • 方式三最终版--通过读取配置文件(**.properties)-map

  • 1.创建properties对象

  • 2.创建流

  • 3.调用方法加载流:p.load(fis);

  • 4.读取内容

  • 5.获取driver对象

  • 6.利用读取到的内容获取connection对象

3.properties:-key,value为string,若在module中运行,则默认读取配置文件的路径是module下(不是工程下)

二、实现对数据库的CRUD

1.插入一条数据

  • 1.获取connection对象

  • 2.sql语句:String sql = "insert into student(id,name) values(?,?)";

  • 3.预编译:connection.prepareStatement(sql);

  • 4.给占位符赋值:ps.setInt(1,100);ps.setString(2,"zhangsan");

  • 5.执行sql:int result = ps.executeUpdate();

2.修改数据

  • 2.sql语句:String sql ="update student set name=? where id=?"; 

3.删除数据

  • 2.sql语句:String sql = "delete from student";

4.查询数据

  • 2.sql语句:String sql = "select id,name from student";

  • 4.执行sql:ResultSet rs = ps.executeQuery();

  • 5.1遍历获取数据:while(rs.next()){rs.getInt("id")}--先判断是否存在再一条条打印

  • (5.2)遍历时,也可将每条数据装于某对象中,再将该对象放于arryarlist集合,最后再返回集合

  • 《万物皆对象》

三、事务

1.事务:一组逻辑操作单元,使数据从一种状态变换到另一种状态。

2.try{ connection.setAutoCommit(false)..connection.commit(); }catch{ connection.rollback();         }finally{ connection.setAutoCommit(true); }

四、数据库连接池(了解)

1.方式一(德鲁伊)

  • 1.创建数据源对象(数据库连接池对象):new DruidDataSource();

  • 2.设置参数:对象.set...方法

  • 3.获取connection对象

2.方式二

  • 1.创建properties对象:利用配置文件

  • 2.加载流

  • 3.创建DateSource对象:DruidDataSourceFactory.createDataSource(p);

  • 4.获取connection对象

五、DBUtils工具类(了解)

1.查

  • 1.创建queryRunner对象:new QueryRunner();

  • 2.查询单行:Student student = queryRunner.query(connection,

  •         sql语句, new BeanHandler<Student>(Student.class), 占位符赋值);

  • (3.)查询多行:List<Student> students = queryRunner.query(*,

  •                 *, new BeanListHandler<Student>(Student.class));

2.增删改

  • 1.创建QueryRunner对象

  • 2.操作数据:int result = queryRunner.update(connection, sql语句, 占位符赋值);

五、批处理(了解)

1.添加参数(开启批处理):jdbc:mysql://localhost:3306/myemployees?rewriteBatchedStatements=true

2.connection

3.sql

4.预编译

5.批处理操作()

  • 添加批处理:ps.addBatch();

  • 操作数据

  • 执行批处理:ps.executeBatch();

  • 清理批处理:ps.clearBatch();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值