Restful API, path を使うか query を使うか


特に結論はなく、情報収集です。

Google の検索 URI「http://www.google.com/search?q=jellyfish」について考えてみよう。Google Web アプリケーションがパス変数を使用していたならば、この URI はアルゴリズムの実行結果というよりも、ディレクトリのようになっていただろう(http://www.google.com/search/jellyfish)。

Read more ⟶

openapi generator を Spring Boot で利用してみる


設定

build.gradle

辺りを参考にしています。

build.gradle
plugins {
    id 'eclipse'
    id 'org.openapi.generator' version '4.3.1'
}

ext {
    openApiOutputDir = "$rootDir/build/generated/openapi"
}

sourceSets.main.java.srcDirs += ["$openApiOutputDir/src/main/java"]

dependencies {
    // これらは自動生成クラスが import しているので必要
    implementation 'org.springframework.boot:spring-boot-starter-validation'
    implementation 'org.openapitools:jackson-databind-nullable:0.2.1'
    compileOnly 'io.swagger:swagger-annotations:1.6.2'
}

openApiGenerate {
    generatorName = 'spring'
    inputSpec = "$rootDir/specs/test.yml"
    outputDir = "$openApiOutputDir"
    apiPackage = 'org.openapi.example.api'
    modelPackage = 'org.openapi.example.model'
    configOptions = [
        dateLibrary: 'java8',
        interfaceOnly: 'true',
        skipDefaultInterface: 'true',
    ]
}

compileJava.dependsOn tasks.openApiGenerate
Read more ⟶

Spring BootプロジェクトにLombokとMapStructを追加する(Eclipse & Maven/Gradle)


(2021-10-16 更新)

Spring Boot プロジェクトにLombokとMapStructを追加し、かつ Eclipse で開発を行う場合の設定です。

同じようなことを何回か書いてきた気がするのですが、結局どうすれば良いの?というのをまとめて書いたものが無いっぽいので改めて記事に起こしました。

Read more ⟶

Gradleでintegration testを作成するも実行できない(JUnit5)


Gradle で integration-test 用にテストディレクトリを分けようとして リファレンス を参考に build.gradle を編集しました。

しかし、コンパイル対象には入っているようですがこのテストが実行されている気配がありません。

Read more ⟶

ランダム文字列URL生成に関するメモ


推測されないような文字列を動的に生成しURLに利用できるような仕組みを調べていますが、その調査メモです。

ちょうど私が調べている時期と重なって、関心対象が同じ資料がアップロードされていました:

Read more ⟶

Spring Security OAuth 2.0 Login を自動テストする


KeycloakをIdPにしてSpring Security OAuth 2.0 Login/Client を試してみる で作成したプログラムの自動テスト方法です。

今回のコードも前回と同じく次のディレクトリにあります:

まず結論なのですが、リファレンスに説明がありますのでここを参照しましょう、ということになります:

Read more ⟶

LombokとMapStructをEclipseで併用しようとした際の不具合がMapStruct1.4.0で解消されていた


これまで、LombokとMapStructを併用しようとした場合、そのままだと不具合(MapStructのアノテーションプロセッシングが動作しない)があり、ちょっとひと手間かけてその不具合を回避する必要がありました。

Read more ⟶

SWTのFindWindowはもはや存在しない


元ネタ:

いにしえのJava世界では、Win32APIにアクセスするためにSWTを利用していたそうです(リンク先のエントリは2005年のもの。私がJava始めるまえの話だ…)。

Read more ⟶

GradleでSpring Bootプロジェクトを作成してSTS(Eclipse)でインポートする手順


はじめに

Spring Initializrを使ってGradle形式でプロジェクトを作成した場合、どうやってSTS(Eclipse)へインポートするのか逡巡しました。

Read more ⟶

KeycloakをIdPにしてSpring Security OAuth 2.0 Login/Client を試してみる


はじめに

Spring Boot で Spring Security OAuth 2.0 Login / Client を利用する手順をまとめます。

また、認可サーバ(IdP)にはローカルで立てたKeycloakを用いますのでそちらのセットアップ手順も記載します。

Read more ⟶

いつもGitブランチ運用でこまること、考慮すべきポイントのまとめ


現在、新しいプロジェクトに参画してGitのブランチ戦略を考えています。

何回かブランチ戦略を考え、そして運用してきたのですが、思うところを書いてみます。

Read more ⟶

Spring Security OAuth 2.0 Client の auto-configuration


上記のクラスが Import しているもの(など):

`WebClient` の 覚書


RestTemplateBuilderBean がsingleton-socpeかつちょっと変態的なインスタンス生成を行っていたので驚いた、というエントリを昔書きました:

ところで、現時点で RestTemplate は既に maintenance mode なので、新規実装に用いるのは忍びないなあ、と思い、 WebClient を利用する前提で薦めることにしました。

Read more ⟶