JDBC
是什么?
Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。
怎么用
前提:将jdbc包导进java工程中
1、装载驱动
通过 Class.forName() 加载 驱动类
Class.forName("com.mysql.jdbc.Driver");
2、获取Connection实现类(to 连接数据库)
通过DriverManager的getConnection(url,user,pwd);
- url:连接字符串 url:jdbc:mysql://localhost:3306/数据库名称
- user:数据库账号
- pwd:数据库密码
Connection connection = null;
connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/myschool_classtest","root","root");
Connection类的几个静态方法:
connection.setAutoCommit(false); // true :自动事务 false:手动事务
connection.commit(); // sql语句执行成功 则提交事务
connection.rollback(); // sql语句执行失败 则回滚事务
ps:静态方法不用创建对象可以直接调用。
3、创建的Statement 实现类(to向数据库发送SQL)
Statement statement = null;
statement = connection.createStatement();// 返回的时接口Statement的具体实现类
4、获得接口ResultSet的具体实现类
- sql 的查询语句
ResultSet resultSet = null;
String sql = "select *from student" ;
resultSet = statement.executeQuery(sql);// 返回的时接口ResultSet的具体实现类
getInt()方法:检索当前行中指定列的整型值;若该列的int值为null,则返回0
resultSet.get列类型( 列下标 (从1开始));
resultSet.get列类型( 列名 );
while(resultSet.next()){
// resultSet.get列类型(列下标 (从1开始))
int studentNo = resultSet.getInt(1);
// resultSet.get列类型(列名)
int studentNoo = resultSet.getInt("studentNo");
System.out.println(studentNoo);
String studentName = resultSet.getString(3);
System.out.println(studentNo+studentName);
}
- sql 的修改语句
String sql = "update student set gradeId = 14 where studentName = '王x'";
int row = statement.executeUpdate(sql); //返回DML执行后 影响的行数
System.out.println(row > 0?"执行DML语句:更新成功":"执行DML语句:更新失败");