Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SpringBootでAPI開発

Naka Sho
October 17, 2023
110

 SpringBootでAPI開発

SpringBootでAPI開発

Naka Sho

October 17, 2023
Tweet

Transcript

  1. 本日の プレゼンテーション 主要トピック 環境構築(JDK,IntelliJ,Docker) Spring Bootの設定 hello worldを出してみよう docker でimage作ってみよう

    docker でSpring Bootを起動させてみよ う データベースに接続してみよう データベースにデータを登録してみよう データベースのデータを削除してみよう
  2. Mac,Linux 向け sdkman から DL(windows な らwsl でも可) https://sdkman.io/ sdk

    list java sdk install java 17.0.1-open sdk default java 17.0.1-open
  3. Spring Boot の設定 https://start.spring.io/ ProjectをGradle Groovy、Dependenciesに spring web を追加して GENERATEを押してください、

    https://start.spring.io/#!type=gradle- project&language=java&platformVersion=3.0. 1&packaging=jar&jvmVersion=17&groupId=co m.example&artifactId=demo&name=demo&d escription=Demo%20project%20for%20Sprin g%20Boot&packageName=com.example.dem o&dependencies=web
  4. docker でSpring Boot を起動させ てみよう docker でSpring Bootを起動させてみよう。 intelliJで起動してるSpring bootを止めて、以下のコマンドでdockerでspring

    bootを立ち上げてください。 同様に http://localhost:8080/hello にアクセスするとhello がレスポンスされ ます。 docker run -it --rm -p 8080:8080 demo/demo:v0.0.1
  5. データベースに接続してみよう persistenseというパッケージを新規で作成し、二つのファイルを作成します package com.example.demo.persistense; import org.apache.ibatis.annotations.Lang; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Select;

    import org.mybatis.scripting.freemarker.FreeMarkerLanguageDriver; import java.util.List; @Mapper public interface TestMapper { @Lang(FreeMarkerLanguageDriver.class) @Select(""" select id, name from TEST """) List<Test> getAll(); }
  6. TestMapperに insertメソッドを追加してみましょう。 @Lang(FreeMarkerLanguageDriver.class) @Insert(""" insert into TEST values (<@p name="id"/>,

    <@p name="name"/>) """) void insert(@Param("id") Integer id, @Param("name") String name); データベースにデータを登録して みよう