chevron_left

メインカテゴリーを選択しなおす

cancel
きり丸
フォロー
住所
未設定
出身
未設定
ブログ村参加

2022/07/22

arrow_drop_down
  • Javaでストラテジーパターンを素振りする

    ストラテジーパターンというGoFのデザインパターンが良いコード悪いコードでも紹介されていたので、素振りします。 自分の言葉で上手な言語化ができていないので、メリットは参考情報や良いコード悪いコードの購入、または別の方の記事を参考にしてください。 環境 Java 17 今回の処理 複数の言語の文章を、ひとつの言語に変換する。 ※ 変換の具体的なロジックは実装しない。 対応 文章と言語名が記載されたDTOを生成する。 @Data public class Question { private String sentence; private Locale locale; } ストラテジーパターンを…

  • JavaのStaticメソッドをMockitoでモックする(ネストしたメソッドも値を返すようにする)

    Javaのオープンチャットに「staticメソッドをMockitoでモックして値を返したい。NestするとNullが返るので、それを回避したい」という要望があったので、素振りしました。 環境 SpringBootStarterTestを基本としています。 Java 17 org.springframework.boot:spring-boot-starter-test 2.6.4 (org.mockito:mockit-core) 4.6.0 org.mockito:mockito-inline 4.6.1 下準備 Mockitoでstaticメソッドをモックにするには、mockito-inl…

  • 【小ネタ】Claspで連携したGoogle スプレッドシートを開く

    環境 GitHub Codespaces @google/clasp 2.4.1 前提 .clasp.jsonファイルのparendIdにスプレッドシートのIDが記載されていること。(create claspで作成された.clasp.jsonであること) { "scriptId": "GASエディタのID", "rootDir": "./src", "parentId": [ "スプレッドシートのID" ] } 対応 次のコマンドを実行してください。--addonオプションを指定すると、parentIdの一番初めにヒットするIDを返却します。 clasp open --addon # 返却値 …

  • Javaのラムダ式(Stream API)で複数キーでCollectors.groupingByする

    JavaのStream APIにて、複数キーでCollectors.groupingByする方法を記載します。 環境 Java 17 対応 前提として、次のrecordの項目を元に、Collectors.groupingByをします。 public record Book(String id, String language, int year, String salesTerritory, Author author) {} public record Author(String name) {} 正道な方法 COllectors.groupingByの第二引数にCollectors.gro…

  • Javaのラムダ式(Stream API)でNullableな項目にCollectors.groupingByする

    Javaのラムダ式(Stream API)にて、Collectors.groupingByというグルーピングしてくれるメソッドがあります。ただし、このメソッドの引数はNonNullである必要があり、万が一Nullが混ざってしまうとNullPointerException: element cannot be mapped to a null keyが発生してしまいます。 今回の記事では、Nullableな項目に対して、JavaのStream APIのCollectors.groupingByを実行する方法を記載します。 環境 Java 17 対応 Optional.ofNullableメソッド…

arrow_drop_down

ブログリーダー」を活用して、きり丸さんをフォローしませんか?

ハンドル名
きり丸さん
ブログタイトル
きり丸の技術日記
フォロー
きり丸の技術日記

にほんブログ村 カテゴリー一覧

商用