SIerだけど技術やりたいブログ

6年目のSIerのブログです

Spring

Spring WebFlux の概要を理解する

以下のサイトに移行しました。 https://qiita.com/kimullaa/items/33667b80ca315331d4da

Spring Securityで特定ヘッダーがついてるときだけ認証をパスさせる方法

以下、Basic認証を例に取り上げる。 何をしたいか? アプリケーションに認証をかける。 $ curl -i -u 'user:pass' localhost:8080/api/sample HTTP/1.1 200 X-Content-Type-Options: nosniff X-XSS-Protection: 1; mode=block Cache-Control: no-cache, no-s…

Spring 抽象クラスに定義したアノテーションは引き継がれるのか

以下のサイトに移行しました。 https://qiita.com/kimullaa/items/9fddfe0a79fac87d5b3d

Spring 非同期タスクの同時実行数を制限する方法

以下のサイトに移行しました。 https://qiita.com/kimullaa/items/59546ea68681673bd7e9

SpringのContextHolderいろいろ

Springには、…ContextHolderというクラスがある。スレッドローカルに値を保存しておくことで、情報をいろんなところから参照できるようにする。スレッドローカルは…まあスレッド固有の値ですよね。(あたりまえ)TomcatなどのAPサーバはリクエストごとにwork…

Springの@RequestScopeや@SessionScopeは結局どこに保存されるのか?我々は真相に迫った

以下のサイトに移行しました。 https://qiita.com/kimullaa/items/55733cd88fd0ad47d038

Springの@Asyncで非同期処理をする

以下のサイトに移行しました。 https://qiita.com/kimullaa/items/c374b11cc11ff614c414

Spring Framework で同一アプリ内でのイベントを扱う(ApplicationEvent、EventPublisher)

なぜイベントを使うのか デフォルトで提供されているイベント Listenerの実装方法 ApplicationListenerを実装する方法(~spring4.1) @Eventlistenerアノテーションを使う方法(spring4.2~) カスタムイベントの実装方法 サンプルアプリの題材説明 Application…

Spring管理外のクラスでSpringのBeanを使う

Spring管理外のクラスでSpringのBeanを使う Spring管理外のクラスでSpringのBeanを使いたい場面がある。 そもそも自分でnewすればいいだけでは?という場面もあるけど、@ProfileでどんなBeanが来るのか実行時までわからない、とか複雑な初期化あるとかいう前…

Spring REST Docs でAPIドキュメントを作成する

この記事の内容 Spring REST Docsを利用すれば、テストコードから以下のようなAPIドキュメントを作成できるようになる。 この記事の内容 Spring REST Docs とは サンプル 使い方 mavenのpom.xmlにversionを指定する Asciidoctorでasciidocからhtmlを生成する…

SpringBoot @Valueで任意の型にセットする CustomPropertyEditorの作成

はじめに Springには外部定義から値を読み込んで、Javaのフィールドにセットする機能がある。application.propertiesにメッセージを記述し、 message=helloJavaクラスで利用すると、 @Service public MessageServiceImpl implements MessageService { @Value…

SpringMVC 複数のフォームオブジェクトにバインドする方法

よくやり方忘れるのでメモ。 こんな画面をSpringMVCで作りたい familyNameとgivenNameが1つのFormで、それを複数繰り返す。 実装方法(サーバ側) Controllerクラスの引数に受け取るFormを用意する 本筋と外れるけど、入力値チェックも設定する。 @Data @AllAr…

SpringSecurity 権限に基づいて認可処理をする

以下のサイトに移行しました。 https://qiita.com/kimullaa/items/f2f8db64bfd374719580

SpringのAOP @Pointcutの使いどころ

SpringのAOP @Pointcutの使いどころ SpringのAOPのアノテーションで、@Pointcutだけ使い方がよくわからなかったのでメモ。 SpringのAOPってなに? 具体的な処理と関係のない処理(ロギングとか)が混じっていると、煩雑になって保守性が下がる。なので、具体的…

簡単 Spring SessionでKVSを用いたセッションストア

そもそもセッションってなに? Spring Sessionってなに? どんな動き? 実装方法 Redisの準備 アプリケーションコード HttpSessionを利用する側 動作確認する サンプル まとめ 参考にしたサイト そもそもセッションってなに? セッションはAPサーバ固有のデータ…

Spring Cloud Configのリファレンス読んだ

Spring Cloud Configとは 何がいいの? サンプル書いた 実装方法 Configサーバ Configクライアント クライアントから見たときのファイル名とアプリの関連性は? 設定変更の反映 でも全部のConfigクライアントに/refreshなんてしたくない 参考にしたサイト Spr…

SpringSecurityでFORM認証

SpringSecurityとは springプロダクトのひとつ。 認証認可の機能を提供してくれる。 認証(アクセスしてきたのは誰か?) BASIC認証、DIGEST認証、LDAP、FORM認証、openID認証など、色々サポート 認可(そのユーザが何をできるか?) デフォルトはROLEベースの制…

SpringBootでHelloWorld

最近の流行りに乗っかれていないので、SpringBootを試してみる。 そもそもSpringBootとは JavaEEと並んでメジャーなフレームワークに『Spring』というものがある。 Springは以下のような複数のプロジェクト(抜粋)から構成されていて、このプロジェクトのひと…