JDBC学习笔记

API

DriverManager

注册驱动

Class.forName(“com.mysql.jdbc.Driver”);//不写也行 默认写上了

 获取数据库连接

Connection conn = DriverManager.getConnection(url, user, password);//用连接池获取连接效率更高

Connection

获取SQL对象

Statement stmt = conn.createStatement();//获取SQL对象

管理事务

try {
    // 开启事务
    conn.setAutoCommit(false);
    
    // 执行SQL
    
    // 提交事务
    conn.commit();
} catch (Exception tb) {
    // 回滚事务
    conn.rollback();
    tb.printStackTrace();
}

Statement

执行SQL语句

// 1. 执行增删改语句
int count = stmt.executeUpdate(sql);

// 2. 执行查询语句
ResultSet rs = stmt.executeQuery();

ResultSet

封装查询结果

// 1. 判断是否有下一条数据
rs.next();

// 2. 获取字段的数据
rs.getXxx(字段名);

PreparedStatement

防SQL注入、预编译

// SQL注入是由字符串的拼接引起的 为了防止SQL注入 不再使用字符串拼接 改用?代替 之后在设置?的值
String sql = "select * from tb_user where username = ? and password = ?";

// 获取pstmt对象
PreparedStatement pstmt = conn.prepareStatement(sql);

// 设置?的值
pstmt.setString(1, userName);//参数1:问号的序号 参数2:设置的值
pstmt.setString(2, password);

预编译功能需要手动开启

//在连接数据库url时,开启预编译功能 useServerPrepStmts=true
url=jdbc:mysql:///db1?useSSL=false & useServerPrepStmts=true;

数据库连接池

// 加载配置
Properties prop = new Properties();
prop.load(new FileInputStream("jdbc_demo/src/druid.properties"));

// 连接数据库
DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);
Connection conn = dataSource.getConnection();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值