2024-01-01から1年間の記事一覧

【Java】Java17以降で整数の完全な16進数文字列を得たいならHexFormatがおすすめ

Long.toStringは上位ビットが0だった場合に削れた文字列を返してしまいます。 完全な16進数表記を得るにはString.format("%016x", number)を利用する例がよく引っかかりますが、内部処理を見ると結構重そうなことをしています。 一方、Java 17からは、このよ…

【jOOQ】UUIDを大量指定する際の省メモリ化【PostgreSQL】

状況 大量のUUIDを指定したin句を発行する際に、メモリ消費量が問題になりました。 見たところ、jOOQではUUID1件当たりcast('b81b8735-6ac8-4b0b-a969-658e70425616' as uuid)みたいな形のクエリになってしまうことが原因のようでした。 対処 応急処置として…

【Java】AWS SDK2で、S3からファイルへgetObjectする際、デフォルトでは失敗時にDL先ファイルが削除される

AsyncClientの方で調査していますが、通常の方も同じ内容が有るはずです。 特にコンフィグ無しでAsyncResponseTransformer.toFileを呼び出した場合、FileTransformerConfigurationはdefaultCreateNewで設定されます。 aws-sdk-java-v2/core/sdk-core/src/mai…

【Kotlin】kotlin-reflectを弄るためのメモ

github.com greadle.propertiesを弄る ビルド・テストで全コア使われると他アプリの動作が重くなるので、kotlin.test.junit5.maxParallelForksを全コア数 - 最低限確保したいコア数にしていいかも。 以前はJDK7以前を無視するオプションも有ったがいつの間に…

OpenAPI Generatorで、何でも入れてOKのプロパティの値に型付け(Map<String, String>とかに)する方法

以下のように、additionalPropertiesのtypeを指定すると、値の型を変えられます。 例ではstringを指定しているので、Kotlinで生成した場合Map<String, String>になります。 type: object additionalProperties: type: string type: integerにすればMap<String, Int>になりますし、type: st</string,></string,>…