Java

Java

Javaのラムダ式と戦う

ラムダ関数難しすぎわろた。 知っている人にしかわからない、矢印を使った例の式ですね。最初見た時は何の悪ふざけかと思いました。 それとなく使ってきましたが、ビルダーとか使い始めると避けては通れないので整理しようと思います。 ラムダ式の基本 【...
Linux

サーバーで定義した変数をJavaアプリケーションで読み込む

外部のAPIに接続する際に、Basic認証を使用するシーンはまだよく見かける。 このときのクレデンシャル(ユーザーIDとパスワード)をどこに保存するのか問題。 Javaでは、環境変数はapplication.env.ymlに記述するのが一般...
Java

Java鉄板ログ調査

調査の鉄則 Java + Angular のシステムについて、今までたくさんの調査をしてきた。 中には難易度が高く、有識者に助けを求めたものや、長時間、上司とレビューしたものもあった。そして、どの人からも教えられる解決策は同じだった。それは...
Java

Javaのgradleビルドデプロイ備忘録

Javaはmavenもしくはgradleというビルドツールを使用する。ここではgradleについて扱う。 ビルドの設定はbuild.gradleで行う。 ここで使われている変数は、gradle.propertiesに定義されていることがある...
Java

SpringSecurity備忘録

SpringSecurityの実装で躓いたポイントを残しておく。実装については中途半端なコードを残しても仕方ないので、ここを見ればわかる、というようにドキュメントのリンクを記載するのみとする。 後半では、Jwtを使用した実装についても触れる...
Java

Javaのセッション

セッションとは あるショッピングサイトを見て回るとき、ページ遷移を繰り返してもショッピングカートの中身を保存しておくような仕組み。 しかし、これはあくまで説明のための例であり、セッション管理の主たる機能は認証機能にある。 セッションでログイ...
Java

SpringFrameworkのログ出力

ログ出力方法 いくつか選択肢があるが、ここではlogbackというライブラリを使用する。 JavaでLoggerを作成し、クラスパスを設定すると、logback設定ファイル (logback-spring.xml)の、対応するLoggerの...
Angular

CSRF備忘録

CSRFとは? CSRF (Cross Site Request Forgery)は、Cookieの認証情報を不正リンクによって悪用されること。 認証情報は一般的に、クッキー、ヘッダーに付与される。 例えば、銀行のサイトにログインすれば、ブ...
Java

【Java】JUnitテスト基礎

JUnitでは、アサーションという検証を行うためのクラスを使用する。 しかし、このアサーションは以下のように、たくさんのパッケージがあり、どれを使用(import)するかで、メソッドの使い方が変わるので注意する。 org.assertj.c...
Java

JavaでCookie実装

Cookieとは 主に、セッション管理、トラッキング目的で使用される。Webアプリにログインして、ブラウザを閉じて再度同じページにアクセスしてもログイン状態が保持されているのはこのため Cookieはブラウザ (メモリ) に保存される。 C...