1. データベースに接続する
図に示す順序でデータベースに接続します
データベースに接続する
データベースがサーバー上のデータベースの場合は、次の操作を実行する必要があります。
接続が成功したことを示すインターフェイスが表示されます。
2. 依存関係のインポートとその他の準備
2.1. 依存関係のインポート
<!-- MYSQL-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<!-- web-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
pom.xml ファイル内の依存関係が広く知られるようになった場合は、Maven を手動で更新する必要があります。
2.2. リソースの設定
Spring Boot は通常、2 つのリソース構成ファイルをサポートします。それぞれapplication.propertiesとapplication.yamlです。
私は個人的には設定に yaml を使用することを好みます。
関連する設定を application.yaml に書き込む
ここでプログラムを実行する際にエラーが発生しました。タイム ゾーンの設定が必要になる場合があるため、URL にタイム ゾーンが設定されていないことが原因です。
タイムゾーンエラーが報告された場合は、タイムゾーンserverTimezone=UTCをURLに追加してください
3. コードの書き方
jdbc 操作をどこで実行するかについて心配する必要はなく、重要なのはメソッドを学ぶことです。
JdbcTemplate の紹介
@Autowired //自动注入
JdbcTemplate jdbcTemplate;
JdbcTemplate について
JDBC はすでにほとんどのユーザーの最も基本的なニーズを満たすことができますが、JDBC を使用する場合は、PreparedStatement の取得、SQL ステートメントのパラメーターの設定、接続の終了など、データベース リソースを自分で管理する必要があります。
JdbcTemplate は Spring による JDBC のカプセル化であり、JDBC を使いやすくすることを目的としています。JdbcTemplate は Spring の一部です。JdbcTemplate はリソースの作成と解放を処理します。これは、接続を常に閉じるのを忘れるなどのよくある間違いを回避するのに役立ちます。彼はステートメントの作成や実行などのコア JDBC ワークフローを実行します。私たちは SQL ステートメントを提供して結果を抽出するだけで済みます。
Springのソースコードアドレス:https://github.com/spring-projects/spring-framework
JdbcTemplateでSQL文を実行する方法は大きく3つに分類される。
実行: すべての SQL ステートメントを実行できます。通常は DDL ステートメントの実行に使用されます。
update: INSERT、UPDATE、DELETE などの DML ステートメントを実行するために使用されます。
queryXxx: DQL データ クエリ ステートメントに使用されます。
お問い合わせ
@GetMapping("/userList") //设置Mapping
public List<Map<String,Object>> userList(){
String sql = "select * from student"; //sql语句
//通过jdbcTemplate.queryForList(sql)执行sql语句,并将查询出来的结构放在定义的List中
List<Map<String, Object>> list_maps = jdbcTemplate.queryForList(sql);
return list_maps; //通过List将查询出来的结果返回到前端
}
に追加
@GetMapping("/addUser")
public String addUser(){
String sql = "insert into student(id,name,age,user) values(5,'七七',23,'七')";
jdbcTemplate.update(sql);
return "add-ok";
}
消去
ここでは、ユーザーが URL を入力するときに指定した ID を使用して、テーブル内のどのデータを削除するかを決定します。
@GetMapping("/deleteUser/{id}")
public String delUser(@PathVariable("id") int id){
String sql = "delete from student where id = ?" ;
jdbcTemplate.update(sql,id);
return"delete-->ok";
}
改訂
@GetMapping("/updateUser/{id}")
public String update(@PathVariable("id") int id){
String sql = "update student set name=?,age=? where id =" + id;
//封装
Object[] objects = new Object[2];
objects[0]="马户子";
objects[1]="45";
jdbcTemplate.update(sql,objects);
return "update-->ok";
}