2023-10-01から1ヶ月間の記事一覧

JPAでバイナリファイルをS3に永続化する

はじめに FileObject StorageStoreEntity S3StorageStoreEntityListener まとめ はじめに アップロードされたファイルなどのバイナリデータを、JPA の上で、透過的に S3 に永続化する実装例です。 JPA でバイナリデータを扱う場合、@Lob で BLOB として扱う…

JDK21 の変更点まとめ(JEP外)

blog1.mammb.com JEP 外の JDK 21 における変更点を、開発時に覚えておきたいものに絞りまとめておきます。 Math.clamp() メソッドの追加 範囲指定可能な String.indexOf() 区切り文字を含めて分割する String.splitWithDelimiters() StringBuilder.repeat U…

マイクロサービス・フレームワーク Armeria の始め方

Armeria とは Armeria の始め方 サービス Route デコレータ DecoratingHttpServiceFunction SimpleDecoratingHttpService DecoratingService クライアント クライアント デコレータ gRPC サービス まとめ Armeria とは マイクロサービス用のネットワーク・ラ…

AWS SDK for Java 2.x の使い方

はじめに S3 SDK 利用の流れ クレデンシャル S3クライアントの作成 オブジェクトのアップロード オブジェクトの取得 オブジェクトの一覧 オブジェクトの削除 S3 Transfer Manager S3 Transfer Manager によるアップロード S3 Transfer Manager によるダウン…

Jakarta EE 11 で追加される Jakarta Data 1.0 概説

はじめに Jakarta Data 1.0 により提供されるもの Repository クエリ定義 @Query アノテーション メソッド名によるクエリ定義 パラメータによるクエリ定義 ページング キーセット・ページネーション @StaticMetamodel まとめ はじめに 2024年3月末にリリース…

【Rust】Shift-JIS ファイルを UTF-8 へ変換

encoding_rs クレートを利用。 バイトバッファ経由での処理となるが、Shift-JISは1〜2バイト、UTF-8は1〜4バイトで、変換後のバイト数が読めないので意外と面倒。 use std::process; use std::error::Error; use std::io::Write; use std::io::Read; use std…