以下是我创建的一个jdbc工具类
import java.sql.*;
public class JDBCutil {
static String url="jdbc:mysql://localhost:3306/sjt2405";
static String user="root";
static String password="123456";
//加载驱动
static {
try {
Class.forName("com.mysql.cj.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
public static Connection getConnection(){
Connection conn=null;
try {
conn= DriverManager.getConnection(url,user,password);
} catch (SQLException e) {
e.printStackTrace();
}
return conn;
}
public static void close(Connection conn, PreparedStatement ps, ResultSet rs){
try {
if (rs!=null){
rs.close();
}
if (ps!=null){
ps.close();
}
if (conn!=null){
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
使用之前只需要将以下代码转换成自己的数据库名称以及自己的账号密码就可以
static String url="jdbc:mysql://localhost:3306/sjt2405";
static String user="root";
static String password="123456";
简单介绍一下工具类的使用流程
导入自己的工具类:如图所示
接下来就可以直接在dao层使用了
public void delBook(String inputName) {
Connection conn=null;
PreparedStatement ps =null;
try {
//驱动管理器运行,获取链接Connection
conn= JDBCutil.getConnection();
String sql = "delete from book where name =?";
//预加载sql
ps = conn.prepareStatement(sql);
ps.setString(1,inputName);
//执行sql 查询执行sql后会返回一个结果集
ps.execute();
//遍历 .next() 判断是否有下一条数据
} catch (SQLException e) {
e.printStackTrace();
}finally {
//关流
JDBCutil.close(conn,ps,null);
}
}
介绍jdbc
在Java编程中,JDBC(Java Database Connectivity)是一个非常重要的技术,它可以帮助我们与各种类型的数据库进行交互。本文将通过六个步骤详细介绍JDBC编程,包括连接数据库、创建语句、执行语句、处理结果、关闭资源以及注意事项。
一、连接数据库
在JDBC编程中,连接数据库是第一步。我们可以使用JDBC-ODBC桥接器或者纯Java驱动来连接数据库。以下是使用纯Java驱动连接MySQL数据库的示例代码:
static String url="jdbc:mysql://localhost:3306/sjt2405";
static String user="root";
static String password="123456";
try {
Class.forName("com.mysql.cj.jdbc.Driver");
Connection con = DriverManager.getConnection(url, user, password);
// 连接成功后可以执行查询等操作
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
二、创建语句
连接数据库之后,我们需要创建语句对象,用于执行SQL查询和更新操作。我们可以使用createStatement
方法来创建一个语句对象。以下是创建语句对象的示例代码:
PrepareStatement ps = conn.prepareStatement(sql);
三、执行语句
创建语句对象后,我们可以使用executeUpdate
和executeQuery
方法来执行SQL语句。executeUpdate
用于执行更新操作,例如插入、更新或删除数据,而executeQuery
用于执行查询操作,例如检索数据。以下是执行语句的示例代码:
// 执行更新操作
ps.execute();
// 执行查询操作
rs = ps.executeQuery();
四、处理结果
执行查询操作后,我们得到的是一个结果集(ResultSet)对象。我们需要通过这个对象来处理查询结果。结果集是一个游标,我们可以使用它的next
方法来遍历每一行数据,并使用getInt
、getString
等方法来获取数据。以下是处理结果集的示例代码:
rs = ps.executeQuery(); //遍历 .next() 判断是否有下一条数据 while (rs.next()){ Book book = new Book(); book.setId(rs.getInt("id")); book.setName(rs.getString("name")); book.setAuthor(rs.getString("author")); book.setPrice(rs.getInt("price")); book.setInventory(rs.getInt("inventory")); return book; }
五、关闭资源
处理完结果后,我们需要关闭所有资源,包括连接、语句和结果集。以下是关闭资源的示例代码:
rs.close(); // 关闭结果集
stmt.close(); // 关闭语句对象
con.close(); // 关闭连接对象
连接jdbc工具类后直接
JDBCutil.close(conn,ps,rs);