JDBC的使用

JDBC

SUM公司为了简化开发人员的(对数据库的统一)操作,提供了一个(Java操作数据库)规范,俗称jdbc

这些规范的实现由具体的厂商去做

对于我们开发人员来说,我们只需要掌握jdbc接口的操作即可

java.sql

javax.sql

还需要导入一个数据库驱动包

mysql-connector-java-5.1.37

package com.JDBC.www;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;

import javax.naming.spi.DirStateFactory.Result;

import com.mysql.jdbc.Statement;

//我的第一个JDBC程序
public class Demo01 {
	public static void main(String[] args) throws ClassNotFoundException, SQLException {
		//1. 加载驱动
		Class.forName("com.mysql.jdbc.Driver");  //固定写法,加载驱动
		
		//2.用户信息和url
		//useUnicode=true&characterEncoding=utf8&useSSL=true //固定写法
		String url="jdbc:mysql://localhost:3306/persion?useUnicode=true&characterEncoding=utf8&useSSL=true";
		String username="root";
		String password="123456";
		
		//3.连接成功,数据库对象 connection 代表数据库
		Connection connection=DriverManager.getConnection(url, username,password);
		
		//4. 执行SQL的对象Statement执行sql的对象
		Statement statement=(Statement) connection.createStatement();
		
		//5. 执行SQL的对象 去执行SQL,可能存在结果,查看返回结果
		String sql="SELECT * FROM one_persion";
		ResultSet result=(ResultSet) statement.executeQuery(sql);  
		//返回一个结果集,结果集中封装了我们全部的查询出来的结果
		
		while(result.next()) {
			System.out.println("id:"+result.getObject("id"));
			System.out.println("name:"+result.getObject("name"));
			System.out.println("age:"+result.getObject("age"));
			System.out.println("zd:"+result.getObject("dz"));
		}
		
		//6.释放连接
		result.close();
		statement.close();
		connection.close();
		
	}
}

步骤总结:

  1. 加载驱动 Class.forName(com.mysql.jdbc.driver)
  2. 连接数据库 DriverManager
  3. 获得执行sql的对象 Statement
  4. 获得返回的结果集
  5. 释放连接

DriverManager

//DriverManager.registerDriver(new com.mysql.jdbc.driver())
Class.forName("com.mysql.jdbc.driver"); ///固定写法,加载驱动

//connection 代表数据库
//数据库设置自动提交
//事务提交
//事务回滚
connection.rollback(); //事务回滚
connection.commit();  //事务提交
connectionsetAutoCommit(); 

URL

String url="jdbc:mysql://localhost:3306/persion?useUnicode=true&characterEncoding=utf8&useSSL=true";
//想成网址记忆
//mysql -- 3306
//协议://主机地址:端口号/数据库名?参数1&参数2&参数3 
//oralce -- 1521
//jdbc :oracle:thin:@localhost:1521:sid

Statement 执行SQL的对象 去 执行SQL ,可能存在结果

String sql="sql语句"; //编写sql
statement.executeQuery(sql); //查询操作返回ResultSet
statement.execute(sql);  //执行任何SQL
statement.executeUpdate(sql);  //更新,插入,删除都是用这个,返回一个受影响的行数

ResultSet 查询的结果集: 封装了所有的查询结果

获得指定的数据类型

resultset.getObject() ;    //在不知道的类型的情况下使用
resultset.getString();    //返回String类型的值

遍历,指针

resultset.beforeFirst();   //移动到最前面
resultset.afterLast();  //移动到最后面
resultset.next();     //移动到前一行
resultset.absolute(row); //移动到指定行

释放资源

//6.释放连接
result.close();
statement.close();
connection.close(); //耗资源,用完关掉
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值