2019-01-01から1年間の記事一覧
Spring Boot2系にあげたときにやったことをまとめようと思います。(関連記事) 今回は、Flywayの話です。バージョンアップ後のSpring Bootのバージョンは2.0.9.RELEASEです。2.2対応はまたいつか書きます。 FlywayとSpring Boot Flywayは、データベースマイ…
Spring Boot2系にあげたときにやったことをまとめようと思います。関連記事 今回はGradleの話です。Upgrading your build from Gradle 4.x to 5.0を参考に作業しました。 これだけじゃなかったと思うので、思い出したら追記します。もうGradle 6出ているんで…
Spring Cloud Contractを触ってみようと思ったきっかけは、会社での SwaggerでAPI仕様書を書く -> レビュー -> 実装 という開発フロー問題を感じているからです。 このフローには 1.実装とAPI仕様書で乖離してしまう恐れがある 、 2.いちいちAPI仕様書を書く…
ここ数年で何回かぶち当たってたことが解決したので備忘録として。内容はタイトルの通りです。 @SpringBootTest を使ってテスト書けば設定ファイルを読み込んでくれるので悩む必要はないんですけど、大人の事情でそういうことができない場合もありますよね。…
テスト書いてますか?私は好きです!嫌いな人は多いみたいですけど... Springのテスト部分のリファレンス読んで忘れないうちにまとめよう精神が働いたので書きます。 今回は、@DataJpaTestというレポジトリのテストを書くためのアノテーションを紹介します。…
第3章 Javaパフォーマンスのツールボックス パフォーマンス分析は可視化と表裏一体です。アプリケーションの内部や、その実行環境で起こっていることを知るのがパフォーマンス分析で、可視化にはツールが不可欠です。 オペレーティングシステム付属のツール…
第5章 ガベージコレクションの基礎 ガベージコレクションの概要 Java言語の最も魅力的な特徴の1つに、開発者がオブジェクトのライフサイクルを管理しなくてもよいという点があります。ガベージコレクションとは基本的に、使われなくなったオブジェクトを探…
第7章 ヒープのベストプラクティス 一般的には、オブジェクトを生成する回数を減らし、必要なくなったらすぐに廃棄すべきというルールがある。一方、同じ種類のオブジェクトをなんども生成するのは全体としてのパフォーマンスの悪化に繋がります。このような…
第2章 パフォーマンステストのアプローチ 実アプリケーションでテストする パフォーマンステストに利用できるコードは、マイクロベンチマーク、マクロベンチマーク、メゾベンチマークの3種類にカテゴライズできる。 マイクロベンチマーク これは、とても小…
仕事でMicrometer使う機会が出来たので触ってみました。 Micrometerとは? Micrometerとは、Pivotal社が作っているJVMベースのアプリケーションのためのメトリクスライブラリです。メトリクスの収集とモニタリングシステムへの通知を行います。 メトリクスの…
AssertJ 3.12.0が2019/2/14にリリースされました。これに伴ってユーザガイドがリニューアルされました。 新機能いくつか試してみました。 ネストしたオブジェクトの検証 AbstractObjectAssert#usingRecursiveComparison() を呼ぶことでネストしたオブジェク…
みなさんは、DBアクセスのテストはどう書いていますか?DBをモックにしていますか?実際にDBを用意してテストしていますか? 私は、だいたいH2を用いてテストを書いています。H2を使っているとDDL問題に直面してしまいます。本番ではMySQLやPostgresを使って…
タイトルのとおり、「Web API The Good Parts」を読んでのまとめです。 第1章 Web APIとは何か この本でいうWeb APIは「HTTPプロトコルを利用してネットワーク越しに呼び出すAPI」 Web APIを美しく設計する重要性Web APIを美しく設計した方が良い理由は4つ…
コイニーのバックエンドチームでTech Dayを初開催しました! Tech Dayとは、「日々のプロジェクトにリソースを取られて、技術獲得やチャレンジができず知的好奇心を満たせていない」と感じたリーダーが(勝手に)企画してくれたとてもありがたい日です。2週…