首先我来讲解一下“Java如何连接数据库”的完整攻略。
一、准备工作
1.1 下载并安装数据库
Java程序连接数据库需要先安装对应的数据库软件,这里以MySQL数据库为例。可以在官网 https://dev.mysql.com/downloads/mysql 下载MySQL Community Server安装包(根据系统位数选择),下载后按照提示安装即可。
1.2 下载并安装JDBC驱动程序
JDBC是Java连接各种数据库的标准API,所以连接MySQL也需要下载相应的JDBC驱动程序。可以在MySQL官网 https://dev.mysql.com/downloads/connector/j 下载对应的JDBC驱动程序,下载后解压得到一个jar包。
1.3 创建数据库和表
连接数据库之前需要先创建一个数据库和对应的表。这里以MySQL为例,在数据库命令行中执行以下语句:
CREATE DATABASE mydb;
use mydb;
CREATE TABLE student (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(20),
age INT,
gender VARCHAR(4)
);
二、连接数据库
在Java中连接数据库,需要先加载JDBC驱动程序,然后通过驱动程序获取数据库连接对象。
2.1 加载JDBC驱动程序
加载JDBC驱动程序有两种方式,一种是使用Class.forName()方法加载,另一种是使用DriverManager.registerDriver()方法加载。这里使用第一种方式加载:
Class.forName("com.mysql.jdbc.Driver");
2.2 获取数据库连接对象
使用DriverManager的getConnection()方法获取数据库连接对象。需要指定连接数据库的URL、用户名、密码等信息。
String url = "jdbc:mysql://localhost:3306/mydb?useSSL=false";
String user = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, user, password);
三、操作数据库
连接成功后,就可以对数据库进行操作,包括增、删、改、查等操作。
3.1 查询数据库
String sql = "SELECT * FROM student";
Statement statement = conn.createStatement();
ResultSet resultSet = statement.executeQuery(sql);
while (resultSet.next()) {
int id = resultSet.getInt("id");
String name = resultSet.getString("name");
int age = resultSet.getInt("age");
String gender = resultSet.getString("gender");
System.out.println("id:" + id + ",name:" + name + ",age:" + age + ",gender:" + gender);
}
3.2 插入数据到数据库
String sql = "INSERT INTO student(name,age,gender) VALUES(?,?,?)";
PreparedStatement preparedStatement = conn.prepareStatement(sql);
preparedStatement.setString(1, "张三");
preparedStatement.setInt(2, 18);
preparedStatement.setString(3, "男");
int rows = preparedStatement.executeUpdate();
System.out.println(rows + " rows affected.");
以上就是Java连接MySQL数据库的完整攻略,另外我也提供两个示例供参考。
示例一
连接MySQL数据库后查询student表中的所有数据:
public static void main(String[] args) throws ClassNotFoundException, SQLException {
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/mydb?useSSL=false";
String user = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, user, password);
String sql = "SELECT * FROM student";
Statement statement = conn.createStatement();
ResultSet resultSet = statement.executeQuery(sql);
while (resultSet.next()) {
int id = resultSet.getInt("id");
String name = resultSet.getString("name");
int age = resultSet.getInt("age");
String gender = resultSet.getString("gender");
System.out.println("id:" + id + ",name:" + name + ",age:" + age + ",gender:" + gender);
}
resultSet.close();
statement.close();
conn.close();
}
示例二
连接MySQL数据库后向student表中插入一条数据:
public static void main(String[] args) throws ClassNotFoundException, SQLException {
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/mydb?useSSL=false";
String user = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, user, password);
String sql = "INSERT INTO student(name,age,gender) VALUES(?,?,?)";
PreparedStatement preparedStatement = conn.prepareStatement(sql);
preparedStatement.setString(1, "张三");
preparedStatement.setInt(2, 18);
preparedStatement.setString(3, "男");
int rows = preparedStatement.executeUpdate();
System.out.println(rows + " rows affected.");
preparedStatement.close();
conn.close();
}
以上就是连接MySQL数据库的完整攻略和两个示例。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java如何连接数据库图文教程 - Python技术站