JDBC是Java Database Connectivity的缩写,它是一种标准的数据库访问方式,可用于连接各种关系型数据库。
JDBC基本步骤包括以下几个环节:
-
加载数据库驱动程序:通过导入JDBC驱动包将驱动程序加载进来。
-
建立数据库连接:通过DriverManager类的getConnection方法连接数据库,返回一个Connection对象。
-
创建执行SQL语句的对象:通过Connection对象创建Statement或PrepareStatement对象,用于执行SQL语句。
-
执行SQL语句并返回结果:通过Statement或PrepareStatement对象的executeQuery方法执行SQL语句并返回结果,返回一个ResultSet对象。
-
处理结果集:通过ResultSet对象对查询到的结果进行处理,可以使用各种方法获取结果集中的数据。
-
关闭连接:释放数据库连接和相关资源,避免资源泄露。
下面是Java代码示例,该示例用于连接MySQL数据库,查询表中的所有数据并输出:
import java.sql.*;
public class JdbcDemo {
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","密码");
stmt = conn.createStatement();
rs = stmt.executeQuery("select * from student");
while(rs.next()) {
System.out.println(rs.getString("id")+" "+rs.getString("name")+" "+
rs.getInt("age")+" "+rs.getString("gender"));
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if(rs!=null) rs.close();
if(stmt!=null) stmt.close();
if(conn!=null) conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
以上示例代码中,我们:
-
加载了MySQL的JDBC驱动程序
-
使用getConnection方法连接数据库,并指定了用户名和密码
-
创建Statement对象,执行SQL语句查询表中所有数据
-
通过ResultSet对象,对查询结果进行处理并输出
-
最后关闭连接,释放资源。
我们还可以使用PrepareStatement对象执行带有参数的SQL语句。示例代码如下:
import java.sql.*;
public class JdbcDemo {
public static void main(String[] args) {
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","密码");
pstmt = conn.prepareStatement("select * from student where id=?");
pstmt.setString(1, "1001");
rs = pstmt.executeQuery();
while(rs.next()) {
System.out.println(rs.getString("id")+" "+rs.getString("name")+" "+
rs.getInt("age")+" "+rs.getString("gender"));
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if(rs!=null) rs.close();
if(pstmt!=null) pstmt.close();
if(conn!=null) conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
以上代码示例通过PrepareStatement对象执行了带有参数的SQL语句查询,其中使用了setString方法设置了查询条件的参数。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Jdbc的步骤以及简单实现代码 - Python技术站