Cheug's Blog

当前位置:网站首页 / JAVA / 正文

JDBC

2019-05-07 / JAVA / 1000 次围观 / 0 次吐槽 /

JDBC:java database connectivity SUN公司提供的一套操作数据库的标准规范

JDBC与数据库驱动的关系:接口与实现的关系。

image.png


JDBC规范

            掌握四个核心对象

            DriverManager:用于注册驱动

            Connection: 表示与数据库创建的连接

            Statement: 操作数据库sql语句的对象

            ResultSet: 结果集或一张虚拟表

 

JDBC的准备工作:

            JDBC规范(接口)在哪里:

             JDK中:

            java.sql.*;

            javax.sql.*;

            数据库厂商提供的驱动jar文件

                文件下载:mysql-connector-java-5.0.8-bin.jar

                 源码下载:mysql-connector-java-5.0.8.zip

        image.png


实现JDBC操作

            1、注册驱动

            2、创建连接

            3、得到执行sql语句的Statement对象

            4、执行sql语句,并返回结果

            5、处理结果

		Connection conn = null;
		Statement statement = null;
		ResultSet resultSet = null;
		try {
			//注册驱动
			//DriverManager.registerDriver(new com.mysql.jdbc.Driver());
			//上面这种写法会注册两次驱动,因为Driver里的静态代码块也有注册驱动
			Class.forName("com.mysql.jdbc.Driver");//推荐这种写法
			
			//创建连接
			//方法一:
			String url = "jdbc:mysql://localhost:3306/test1";
			String user = "root";
			String password = "123456";
			conn = DriverManager.getConnection(url, user, password);
			//方法二:
			String url ="jdbc:mysql://localhost:3306/test1?user=root&password=123456";
			Connection conn = DriverManager.getConnection(url);
			//方法三
			String url = "jdbc:mysql://localhost:3306/test1";
			Properties info = new Properties();
			info.setProperty("user", "root");
			info.setProperty("password", "123456");
			Connection conn = DriverManager.getConnection(url,info);
			
			//得到执行sql语句的Statement对象
			statement = conn.createStatement();
			
			//执行sql语句,并返回结果
			String sql = "select * from user;";
			resultSet = statement.executeQuery(sql);
			
			//处理结果
			while(resultSet.next()) {
				System.out.print(resultSet.getObject(1));//通过字段索引获取
				System.out.print(resultSet.getObject("id"));//通过字段名获取
			}
		} catch (Exception e) {
			// TODO: handle exception
			e.printStackTrace();
		}finally {
			//关闭资源
			if(resultSet != null) {
				resultSet.close();
			}
			if(statement != null) {
				statement.close();
			}
			if(conn != null) {
				conn.close();
			}
		}


Powered By Cheug's Blog

Copyright Cheug Rights Reserved.