2022-03-01から1ヶ月間の記事一覧

Maven package 実行のメモ

テストスキップしてパッケージ生成 mvn package -DskipTests=trueクリーンしてからパッケージ(よく使いそうな実行) mvn clean package -DskipTests=trueMaven プロジェクトーサブモジュール構成で、モジュールを指定する場合 書式は、、 mvn clean package…

JUnit static メソッドのmock

以前、書いていたが、、 JUnit4 でのモック - Oboe吹きプログラマの黙示録static メソッドのモック は、mockito-core だけでなく、mockito-inline も必要 <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <version>4.4.0</version> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mocki…</artifactid></dependency>

PushbackInputStream を使用する

以前、Excel 拡張子 (xls) (xlsx) 両方に対応した操作 Apache POI として、 oboe2uran.hatenablog.com を書いた。しかし、ファイルシステムによっては、Excel WorkBook の認識に、 Your InputStream was neither an OLE2 stream, nor an OOXML stream or you…

list chain execute

public static <T, R> R relayFunction(List<T> list, Function<T, R> first, BiFunction<T, R, R> func){ Iterator<T> it = list.iterator(); R r = it.hasNext() ? first.apply(it.next()) : null; while(it.hasNext()) { r = func.apply(it.next(), r); } return r; }</t></t,></t,></t></t,>

クォート文字で囲ってないJSONキー

JSONの仕様は、フィールド名:キー は、(") ダブルクォーテーションで囲むと されているが、RFC8259 にそんなこと書いてあるか? JavaScript 表記のことを考えると、キーをダブルクォーテーションで囲まないケースで 読込みエラーになるのは、不都合なのでは…

Iterator → Stream

稀に書くことがある Iterator から Stream への変換メモSpliterators.spliteratorUnknownSize で、イテレータを Spliterator を作って、 StreamSupport で Stream生成 Iterator<T> iterator =list.iterator(); サイズが解らない場合ケースが多いので、 Stream<T> s</t></t>…

リスト要素の前方を参照する処理(3)

oboe2uran.hatenablog.comこれを、先頭だけ Consumer にして、BiConsumer で if 文を書く必要をなくす。 public static <T> void eachPrevious(List<T> list, Consumer<T> first, BiConsumer<T, T> consumer){ ListIterator<T> it = list.listIterator(); first.accept(it.next</t></t,></t></t></t>…

リスト要素の前方を参照する処理(2)

前回の投稿、 oboe2uran.hatenablog.comさらに、BiConsumer の処理にしてみます。 public static <T> void eachPrevious(List<T> list, BiConsumer<T, T> consumer){ for(ListIterator<T> it = list.listIterator(); it.hasNext();) { T pre = null; if (it.hasPrevious()) </t></t,></t></t>…

リスト要素の前方を参照する処理(1)

特別に新しいことではない、Java標準で 1.6の時代からあることではあるが、 意外と正確に迅速に書けないロジック (課題)A, B. C,.... と文字列のリストが存在する。 これを、前の要素を参照しながら抽出処理する。ListIterator の hasPrevious() と previo…

Jackson Map デシリアライズ

JSON → Map import com.fasterxml.jackson.core.type.TypeReference; TypeReference を使って Map<String, Object> map = new ObjectMapper() .readValue(jsontxt, new TypeReference<LinkedHashMap<String, Object>>(){}); try(InputStream inst = new FileInputStream(Thread.currentThread().getContextC</linkedhashmap<string,></string,>…

AWS Lambda関数 Java イベントの認識

AWS Lambda関数 をJavaで構築する場合、イベントの認識はハンドラメソッドのガイドとして 次がある。 docs.aws.amazon.comいきなり Map<String, String> で受け取るハンドラメソッドの方法が書いてあります。 JSONなら、JSONとして受け取ったら直ぐに parse して処理したいも</string,>…

AWS EventBridge で、Javaで書いた Batch Job にパラメータを渡す。

AWS のナレッジを参考にするしかない。 https://aws.amazon.com/jp/premiumsupport/knowledge-center/batch-parameters-trigger-eventbridge/「準備:Job定義」 Javaで書いた Batch のイメージ作成済でAWS Job定義のジョブ設定を行う。 ”Ref”+”::"+{パラメ…

ローカルの置いた Jar をMavenでビルドの依存関係に追加する。

Maven セントラルリポジトリにない JAR 、あるいは外部サーバーのMavenリポジトリから取得できない JARをローカルPCに置いて、Maven でビルドの依存関係に追加する方法Maven の <build> <plugins> に、以下のように<plugin> を挿入すれば可能になる。例)poisample-0.0.1-SNAPSHOT.ja</plugin></plugins></build>…