JDBC学习总结
一.JDBC介绍
jdbc是SUN公司和简化和统一对数据库的操作定义的一套接口,接口由数据库厂商实现,开发人员只需要学习jdbc接口,通过jdbc加载驱动就可以操作数据库了。
二.编写JDBC程序
2.1、在mysql中创建一个库,并创建user表和插入表的数据。
1
create table t_users(
2 id int primary key,
3 name varchar(32),
4 password varchar(32),
5 );
6
insert into t_users(id,name,password) values(1,'zhansan','123456');
7
insert into t_users(id,name,password) values(2,'lisi','123456');
8
insert into t_users(id,name,password) values(3,'wangwu','123456');
2.2、新建一个Java工程,并导入数据驱动。
2.3、编写程序从t_user表中读取数据
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class JdbcFirstDemo {
public static void main(String[] args)
throws Exception {
String url =
"jdbc:mysql:///test";
String user =
"root";
String password =
"";
Class.forName(
"com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection(url, user, password);
String sql =
"select * from t_user where id = ? ";
PreparedStatement ps = conn.prepareStatement(sql);
ps.setInt(
1,
1);
ResultSet rs = ps.executeQuery();
while (rs.next()) {
String name = rs.getString(
2);
String pwd = rs.getString(
"password");
System.out.println(
"name is " + name +
"\n" +
"password is " + pwd);
}
rs.close();
ps.close();
conn.close();
}
}
运行结果如下:
2.4、数据库URL讲解
URL用于标识数据库的位置,通过URL地址告诉JDBC程序连接哪个数据库,URL的写法为:
常用数据库URL地址的写法:
Oracle写法:jdbc:oracle:thin:@localhost:1521:sidSqlServer写法:jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=sidMySql写法:jdbc:mysql://localhost:3306/sid
2.5、Connection类讲解
Jdbc程序中的Connection,它用于代表数据库的链接,客户端与数据库所有交互都是通过connection对象完成的,这个对象的常用方法:
createStatement():创建向数据库发送sql的statement对象。prepareStatement(sql) :创建向数据库发送预编译sql的PrepareSatement对象。setAutoCommit(boolean autoCommit):设置事务是否自动提交。commit() :在连接上提交事务rollback() :在连接上回滚事务。
2.6、PreparedStatement类讲解
PreparedStatement执行动态的sql语句达到预编译的目的,可以防止程序sql攻击,推荐使用,这个对象的常用方法:
executeQuery() : 执行查询语句,返回结果集execute() : 执行任意一条sql语句,返回的是booleansetString(int parameterIndex,String x) : 设置sql语句中的参数值,参数值从1开始
2.7、ResultSet类讲解
Jdbc程序中的ResultSet用于代表Sql语句的执行结果。 ResultSet既然用于封装执行结果的,所以该对象提供的都是用于获取数据的get方法:
获取任意类型的数据 getObject(int index) getObject(string columnName) 获取指定类型的数据,例如: getString(int index) getString(String columnName) 注:index也是从第一列开始
转载请注明原文地址: https://ju.6miu.com/read-659830.html