Swaggerファイルを使用してモックサーバを起動する方法をまとめる。 モックサーバーには prism を使用する。 prism(Github) 仕様書作成準備 作成したAPI仕様書を管理するためのディレクトリを作成し、npm initコマンドを実行する。 以下は作成されたpackage.…
spotless plugin ソースコードなどのフォーマットチェックおよびフォーマッットを行うタスクを提供するプラグイン Github 以下の言語のフォーマットに対応している Java (google-java-format, eclipse jdt, clang-format, prettier, palantir-java-format) G…
gradle minify plugin https://github.com/gradle-webtools/gradle-minify-plugin 依存関係の追加 build.gradleにプラグインを追加する。 plugins { id("org.gradlewebtools.minify") version "1.3.1" } プラグインの設定 オプションはかなり多く存在してい…
Doma2で楽観排他を実現する方法と更新失敗時の例外処理についてまとめる。 Domaの設定方法 エンティティクラスの楽観ロック用のバージョンカラムにあたるメンバ変数に@Versionを付与する。 @Entity @Table(name = "sample") @ToString @EqualsAndHashCode pu…
①ドメインクラスの定義 1. エンティティでマッピングに使用するクラスに@Domainアノテーションを付与する 2. アノテーションの属性factoryMethodでインスタンスを生成するためのメソッド名を指定する 3. アノテーションの属性accessorMethodでラップする値を…
Spring Bootで非同期処理を実装する方法を説明する。 非同期で実行したいメソッドを作成する Service実装クラスで、非同期で実行したいメソッドを実装する。 メソッドに@Asyncのアノテーションを付与する 属性値に非同期処理の設定のbean名を指定する メソッ…
コマンドプロンプトで作成 必要なツールのインストール 〇Node.js(Windows 64bit版 LTS) 以下のサイトからインストール。 https://nodejs.org/ja/download/ 〇Azure Functions Core Tools コマンドプロンプトで以下のコマンドを実行する。参考 npm i -g az…
@ConditionalOnProperty SpringBootが提供しているアノテーションで、ある特定のプロパティが指定の値かどうかチェックを行う。 チェック結果がtrueの場合、アノテーションを付与しているメソッドが実行され、bean登録される。 アノテーションの属性には以下…
APIがいっぱいあって、1つのSwaggerファイルに全部を書きたくないときのためのメモ。 複数ファイルへの分割 サンプルとして、以下のファイルを複数ファイルに分割する。 openapi: '3.0.0' info: title: サンプルAPI description: API仕様サンプル用 termsOfS…
参考サイト:FlyWay公式 Gradle Pluginの定義追加 FlyWayを使用したいプロジェクトの build.gradle に以下の設定を記述する。 buildscript { repositories { mavenCentral() } dependencies { // 使用するDBのJDBCドライバをクラスパスに設定する classpath …
API仕様書記述方法の中でもメジャーであるSwaggerについて、静的HTML出力する方法のメモ。 HTMLの出力ツールとして redoc-cli を使用する。 redoc-cli(Github) 仕様書作成準備 作成したAPI仕様書を管理するためのディレクトリを作成し、npm initコマンドを実…
Prisma + Typescript の実装サンプル 〇サンプルに使用するテーブル CREATE TABLE shopping_items ( id bigint IDENTITY(1,1) NOT NULL, name varchar(40) COLLATE Japanese_CI_AS NOT NULL, price int NOT NULL, suryo int NULL, description varchar(100) …
TypeORM + Typescript の実装サンプル 〇サンプルに使用するテーブル CREATE TABLE shopping_items ( id bigint IDENTITY(1,1) NOT NULL, name varchar(40) COLLATE Japanese_CI_AS NOT NULL, price int NOT NULL, suryo int NULL, description varchar(100)…
Sequelize + Typescript の実装サンプル 〇サンプルに使用するテーブル CREATE TABLE shopping_items ( id bigint IDENTITY(1,1) NOT NULL, name varchar(40) COLLATE Japanese_CI_AS NOT NULL, price int NOT NULL, suryo int NULL, description varchar(10…
MongoDBの導入手順は以下の記事に記述しています。 olafnosuke.hatenablog.com JavaでMongoDBを操作する(SpringBoot) 依存関係の追加 build.gradleにspring-boot-starter-data-mongodbの依存関係を追加する。 dependencies { implementation 'org.springfr…
mssqlを使用したDB接続実装サンプル 〇サンプルに使用するテーブル CREATE TABLE shopping_items ( id bigint IDENTITY(1,1) NOT NULL, name varchar(40) COLLATE Japanese_CI_AS NOT NULL, price int NOT NULL, suryo int NULL, description varchar(100) C…
tediousを使用したDB接続実装サンプル 〇サンプルに使用するテーブル CREATE TABLE shopping_items ( id bigint IDENTITY(1,1) NOT NULL, name varchar(40) COLLATE Japanese_CI_AS NOT NULL, price int NOT NULL, suryo int NULL, description varchar(100)…
Gitリポジトリの分割 履歴を保持したまま特定のフォルダを新しいリポジトリに分割する方法のメモ。 1. 分割したいプロジェクトをclone git clone リポジトリURL 2. コマンドプロンプトを起動して、クローンしたプロジェクトのルートに移動する 3. 別リポジト…
MongoDB導入 ダウンロードとインストール 以下のページを参考にMongoDBをインストールする。 MongoDBのダウンロード・インストール(Windows10) 起動 > mongo >mongo MongoDB shell version v5.0.9 connecting to: mongodb://127.0.0.1:27017/?compressors=…
SpringBootでモデルをセッションに格納する SpringBootでモデルやエンティティをセッションに格納する方法を説明する。 実装には@SessionAttributesアノテーションを用いる。 @SessionAttributesアノテーションを使用してセッションに格納したオブジェクトは…
Spring Bootで例外処理 エラーページの表示 spring bootでは、Thymeleafを使用している場合、デフォルトで例外発生時にはsrc/main/resources/template/error.htmlに遷移する。 上記のパスにファイルが存在しない場合は、springが準備したWhitelabel Error Pa…
PMD Javaルール ver 6.35.0⇒6.47.0 これまでまとめてきたPMDルールは6.35.0のものだったので 6.35.0から今の最新の6.47.0までのJavaルールの差分についてまとめます。 ver 6.36.0(2021-06-26) ルール名の変更 カテゴリ 変更前ルール名 変更後ルール名 Erro…
PMDのJavaルールについてまとめます。バージョン6.35.0時のルールとなっています。 非推奨となっているルールには「△」を先頭に付与しています。 バージョン6.35.0から6.47.0までのルールの差分については別の記事でまとめています。 olafnosuke.hatenablog.…
PMDのJavaルールについてまとめます。バージョン6.35.0時のルールとなっています。 非推奨となっているルールには「△」を先頭に付与しています。 バージョン6.35.0から6.47.0までのルールの差分については別の記事でまとめています。 olafnosuke.hatenablog.…
PMDのJavaルールについてまとめます。バージョン6.35.0時のルールとなっています。 非推奨となっているルールには「△」を先頭に付与しています。 バージョン6.35.0から6.47.0までのルールの差分については別の記事でまとめています。 olafnosuke.hatenablog.…
PMDのJavaルールについてまとめます。バージョン6.35.0時のルールとなっています。 非推奨となっているルールには「△」を先頭に付与しています。 バージョン6.35.0から6.47.0までのルールの差分については別の記事でまとめています。 olafnosuke.hatenablog.…
PMDのJavaルールについてまとめます。バージョン6.35.0時のルールとなっています。 非推奨となっているルールには「△」を先頭に付与しています。 バージョン6.35.0から6.47.0までのルールの差分については別の記事でまとめています。 olafnosuke.hatenablog.…
PMDのJavaルールについてまとめます。バージョン6.35.0時のルールとなっています。 非推奨となっているルールには「△」を先頭に付与しています。 バージョン6.35.0から6.47.0までのルールの差分については別の記事でまとめています。 olafnosuke.hatenablog.…
PMDのJavaルールについてまとめます。バージョン6.35.0時のルールとなっています。 非推奨となっているルールには「△」を先頭に付与しています。 バージョン6.35.0から6.47.0までのルールの差分については別の記事でまとめています。 olafnosuke.hatenablog.…
PMDのJavaルールについてまとめます。バージョン6.35.0時のルールとなっています。 非推奨となっているルールには「△」を先頭に付与しています。 バージョン6.35.0から6.47.0までのルールの差分については別の記事でまとめています。 olafnosuke.hatenablog.…