jdbcを使用して追加機能を実装する方法は何ですか。
機能を追加するためには、以下の手順に従うことができます:1. `DriverManager.getConnection()` メソッドを使用して、データベースへの接続を取得するための`Connection`オブジェクトを作成します。接続文字列には、データベースのURL、ユーザ名、パスワードが含まれています。2. SQL文を事前にコンパイルするために`PreparedStatement`オブジェクトを作成します。SQL文には`?`をプレースホルダとして使用し、後で実際の値を代入します。3. `PreparedStatement`オブジェクトの`setXxx()` メソッドを使用して、プレースホルダに実際の値を設定します。`setXxx()`の引数の型は、データベースの対応する列のデータ型と一致する必要があります。4. `PreparedStatement`オブジェクトの`executeUpdate()` メソッドを呼び出してSQL文を実行します。このメソッドは、影響を受けた行の数を表す整数を返します。5. 必要に応じて、`Connection`オブジェクトの`commit()` メソッドを使用してトランザクションをコミットできます。6. 最後に、`PreparedStatement`オブジェクトと接続オブジェクトを閉じてリソースを解放します。以下は、`user`テーブルにレコードを追加する方法を示したサンプルコードです。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class AddExample {
public static void main(String[] args) {
// 连接数据库
try (Connection conn = DriverManager.getConnection(“jdbc:mysql://localhost:3306/mydb”,
“username”, “password”)) {
// 创建预编译的SQL语句
String sql = “INSERT INTO user (name, age) VALUES (?, ?)”;
PreparedStatement stmt = conn.prepareStatement(sql);
// 设置占位符的值
stmt.setString(1, “张三”);
stmt.setInt(2, 20);
// 执行SQL语句
int rows = stmt.executeUpdate();
System.out.println(“添加了 ” + rows + ” 行数据”);
} catch (SQLException e) {
e.printStackTrace();
}
} }
上記のコードでは、データベースのURL、ユーザー名、パスワードは実際の状況に合わせて変更する必要があります。また、PreparedStatementオブジェクトを使用する際には、conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS)メソッドを使うことで自動生成された主キーを取得することができます。