0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Docker を使った Mysql接続(JDBC + Kotlin + spring Boot)

Last updated at Posted at 2020-12-06

spring Boot(JDBC)とDocker で「DB接続」を行う(今回はMysqlを採用)

記事としての立ち位置

  • 本記事は、Macを使っています。
  • とりあえず、動かすことをメインに考えています

1. docker-compose.yml への記述

version: "3"
services:
  db:
    image: mysql:5.7
    restart: always
    ports:
      - 3317:3317
    command: --port 3317
    volumes:
      - ./sql:/docker-entrypoint-initdb.d
    environment:
      - MYSQL_ROOT_PASSWORD=「root」で入るためのパスワード
      - MYSQL_DATABASE=新しいDBのなまえ

  adminer:
    image: adminer
    restart: always
    ports:
    - 8000:8000

2, dockerコンテナの起動のコマンド(これでDBが作成される)

docker-compose up -d

確認方法

Docker コマンド

docker-compose exec db bash  
mysql> show databases;

3. application.properties に記述する

spring.datasource.url=jdbc:mysql://localhost:3317/{作成をしたDB名}
spring.datasource.username=mysqlにログインをするユーザー名
spring.datasource.password=mysqlにログインをするパスワード
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.initialization-mode=always
spring.jpa.hibernate.ddl-auto=update

※ port番号は適当です!(3317でも良いですし、9999でもOKです)

必須項目

spring.datasource.url=jdbc:mysql://localhost:3317/{作成をしたDB名}
spring.datasource.username=mysqlにログインをするユーザー名
spring.datasource.password=mysqlにログインをするパスワード
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

4. build.gradle ファイルに、ライブラリを追加

implementation("org.springframework.boot:spring-boot-starter-jdbc")
implementation("mysql:mysql-connector-java")

接続完了!! のはず・・・・

  • curlなどでデータを挿入してみる (完了方法)
0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?