albatrosary's blog

UI/UXとエンタープライズシステム

Spring Bootハンズオンに参加した

以前から熊本でJavaの勉強会に参加していたが、今回はSpring Bootのハンズオンをしてくださった。どちらかと言うと自分がAngularをやっていて、そのRESTなサーバをJavaで作りたいが最近のJavaはよくわからんということでやって頂いた、感謝。

kumamotojava.doorkeeper.jp

やったこと

githubに書かれているチュートリアルを解説付きでコーディングした。IDEはNetBeensで、テキストはこちら:

github.com

  1. mavenのインストールからプロジェクトの作成
  2. Thymeleafの追加
  3. JPAの追加
  4. htmlでの表示
  5. RESTでのAPIアクセス
  6. JDBCでのDBアクセス
  7. デプロイ実行

全体的にSpring Bootの初心者ハンズオンはできた

感想

やっぱり最近のJava(というかSpring)はアノテーションベースだなと。最近と書いたがだいぶ前からね。アノテーションしらないと何もできない。ここは結局Javadocを見ないといけないということと、DDDからネーミングルールが決まっているようなのでDDDをやっている方はどういうアノテーションがあるか想像が付くということでした。

そしてHibernate用のクラス定義(というが正しいのか不明です)がすごくってテーブル定義すべてをアノテーションで定義している。おかげでそこからテーブル生成できるという感じです。

public class Book implements Serializable {

    @Id // Primary Key
    @GeneratedValue //自動採番
    // @javax.persistence.Column(name = "id") DBに作成されるカラム名はデフォルトではjavaのフィールド名称と同じになる。変更したい場合は@Columnを使用する。
    private Long id;

    @NotBlank
    @Size(max = 50) // 最大50桁
    private String isbn;

    @NotBlank
    @Size(max = 50)
    private String title;

    @NotNull
    @Digits(integer = 6, fraction = 0) //最大6桁の整数
    private Integer price;

    @NotBlank
    @Size(max = 200)
    private String summary;
}

最後に

久しぶりにJavaを触りました。あまりに久しぶりだったのですべてにワクワクしました。参考までに、今回テキストのベースとなった資料はこちらの本だそうです。

www.amazon.co.jp