黑马程序员技术交流社区
标题:
JDBC
[打印本页]
作者:
曼舞雪菲
时间:
2016-8-1 22:03
标题:
JDBC
package com.itheima;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Date;
import com.mysql.jdbc.Driver;
/*
* JDBC技术连接数据库,实现步骤
* 1. 导入数据库驱动程序 jar包
* 2. 使用类 java.sql.DriverManager类,注册驱动程序
* 注册驱动: 告诉java程序,使用的是哪个驱动
*
* DriverManager类静态方法,传递Driver类的对象
* static void registerDriver(Driver d)throws SQLException
* Driver类的对象了,就是数据库驱动程序中的Driver类
*
* 3. DriverManager类静态方法 getConnection获取数据库的连接
* static Connection getConnection(String url,String username,String password)
* url: 数据库的连接字符串 连接的方式,数据库名字,数据库的IP地址,连接那一个库
* getConnection返回Connection接口的实现类对象
*
* 4. 通过第三步,获取到了Connection接口的实现类对象
* 实现类对象,调用方法 createStatement()获取Statement接口的实现类对象
* Statement接口作用,执行SQL语句,可以获取查询结果集
*
* 5. 通过第四步,获取到了Statement接口的实现类对象,接口对象调用方法,执行SQL语句
* Statement接口中,执行SQL语句的方法
* ResultSet executeQuery(String sql) 执行数据库的查询SELECT
int executeUpdate(String sql) 执行数据库的INSERT,DELETE,UPDATE
6. 通过五步,获取到了ResultSet接口的实现类对象,ResultSet接口表示的查询数据后的结果集
遍历结果集
ResultSet接口方法遍历结果集
boolean next() 返回真假值,有结果集返回true
获取结果集的方法 全部都是get开头
getXXX() XXX 获取的数据库字段的数据类型
getXXX(int) int参数,就是第几列
getXXX(String) String参数,写列名
*/
public class Demo_01JDBC {
public static void main(String[] args) throws SQLException {
// 使用DriverManager类,注册数据库驱动程序
// 静态方法registerDriver
DriverManager.registerDriver(new Driver());
//DriverManager类静态方法getConnection获取数据库连接对象
//url:jdbc:mysql://主机地址:3306/gjp
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/gjp", "root", "123");
//使用连接对象Connection方法createStatement获取Statement接口实现类对象
//Statement 可以执行SQL语句
Statement stat = conn.createStatement();
//executeQuery方法,执行数据库的查询语句
String sql = "SELECT * FROM gjp_ledger ";
//executeQuery获取到结果集
ResultSet result = stat.executeQuery(sql);
//调用ResultSet接口方法next() 判断有没有结果集
while(result.next()){
//调用get方法,获取结果集
//获取lid列
int lid = result.getInt("lid");
//获取parent列
String parent = result.getString("parent");
//获取money列
double money = result.getDouble("money");
//获取createtime列
Date createtime = result.getDate("createtime");
System.out.println(lid+" "+parent+" "+money+" "+createtime);
}
//释放资源 每个对象的close()
result.close();
stat.close();
conn.close();
}
}
作者:
缘自天方
时间:
2016-8-2 18:10
真的是不错啊
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2