一、最简单原始的jdbc操作方法
目录
package jojo.study.a.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class JdbcDemo {
public static void main(String[] args) throws ClassNotFoundException, SQLException {
howToUseJdbcB();
}
//-- 增删改
private static void howToUseJdbc() throws ClassNotFoundException, SQLException {
// --Jdbc连接数据库步骤
// 1.连接数据库 q
// 1.1 加载数据库驱动类com.mysql.jdbc.Driver
Class.forName("com.mysql.jdbc.Driver");
// 1.2 获得数据库连接
String url = "jdbc:mysql://localhost:3306/jojo_study"; // 写法是固定的
Connection conn = DriverManager.getConnection(url, "root", "xxxxx");
// 2.通过sql语句操作数据库
String sqlStr = "insert into jdbc_demo_student(student_id, student_name) values('00001', '张三')";
Statement statement = conn.createStatement(); // 面向接口,用java.sql的
int result = statement.executeUpdate(sqlStr);// 读用Query,写(增删改)用Update
// 3.关闭连接,一定记得关闭,否则会一直占用资源
statement.close();
conn.close();
}
//-- 查询
private static void howToUseJdbcB() throws ClassNotFoundException, SQLException {
// --Jdbc连接数据库步骤
// 1.连接数据库
// 1.1 加载数据库驱动类com.mysql.jdbc.Driver
Class.forName("com.mysql.jdbc.Driver");
// 1.2 获得数据库连接
String url = "jdbc:mysql://localhost:3306/jojo_study"; // 写法是固定的
Connection conn = DriverManager.getConnection(url, "root", "xxxxx");
// 2.通过sql语句操作数据库
String sqlStr = "select * from jdbc_demo_student where student_id='00001'";
Statement statement = conn.createStatement(); // 面向接口,用java.sql的
ResultSet resultSet = statement.executeQuery(sqlStr); // 返回了一个resultSet,可以用类似迭代器的方法读取返回记录
/* 每条记录。这个操作是相当于类似把指针移动到下一处而已。一开始默认是在空处,移动一下到了有数据的位置。
如果确定只用一条数据,就可以去掉while,next()后直接拿值。*/
while(resultSet.next()) {
String id = resultSet.getString(1); // 注意:!!!jdbc从1开始。
String name = resultSet.getString(2);
System.out.println(name);
String idFromColumnName = resultSet.getString("student_id"); // 也可以通过字段名来取,这种方式更合理
String nameFromColumnName = resultSet.getString("student_name");
// 放入对应的对象即可
}
// 3.关闭连接,一定记得关闭,否则会一直占用资源
statement.close();
conn.close();
}
}