Java
これは、なにをしたくて書いたもの? 前に、Virtual Threadsに関するエントリーを書きました。 Java 21で正式版になったJEP 444(Virtual Threads)に関するAPIを試す - CLOVER Virtual Threadsを使ってHTTPサーバー/クライアントを書いて、スレッドまわり…
これは、なにをしたくて書いたもの? Javaアプリケーションの状態を簡単に見る時に、自分が使うツールのひとつにjstatがあります。 jstatコマンド このjstatコマンドですが、jcmdに直接の代替がなく、いつもjstatはjstatのままだったのですが。 jcmdのPerfCo…
これは、なにをしたくて書いたもの? コンテナ環境などでJavaアプリケーションを実行している時でかつJDKをインストールしていない場合、jcmd等のJDK付属ツールがなくて 困る場合などがあると思います。 こういう時にはjattachというツールを使うと便利そう…
これは、なにをしたくて書いたもの? 自分はJavaのソースコードを書く時は、基本的にIntelliJを使っています。 Emacsを使う時は、lsp-modeを設定しているのがTypeScript/JavaScript、PythonくらいでたまにEmacsでJavaのソースコードを開くと 困ったりしてい…
これは、なにをしたくて書いたもの? Javaでデータベースを使うテストで、Database Riderが便利なのでちょいちょいと使うのですが。 外部キーをたくさん使っていると実行が遅くなるという問題に悩まされたことがあったので、メモしておきます。 @DataSetのus…
これは、なにをしたくて書いたもの? javacコマンドで、--releaseというオプションがあることを認識していなかったようなので、少し見ておくことにしました。 これは、JEP 247 Compile for Older Platform Versionsというもののようです。 JEP 247 Compile f…
これはなにをしたくて書いたもの? 前回のエントリーで、JEP 444(Virtual Threads)について書きました。 Java 21で正式版になったJEP 444(Virtual Threads)に関するAPIを試す - CLOVER この時には踏み込まなかった、スレッドまわりの挙動やスレッドダン…
これは、なにをしたくて書いたもの? Java 21で正式版になった、JEP 444(Virtual Threads)を試しておきたいなということで。 スレッドに関するAPIも変わっているようなので、こちらも合わせて。 なお、スレッドダンプの取得やHTTPサーバー/クライアントを…
これは、なにをしたくて書いたもの? OpenJDK 21が2023年9月19日にリリースされました。 The Arrival of Java 21 JDK 21 Documentation - Home JDK 21ドキュメント - ホーム いつものことながら、Ubuntu Linuxの現行LTSで使えるようになるまでは時間がかかる…
なんの話? 11月11日に、野村コンファレンスプラザ新宿で開催されたJJUG CCC 2023 Fallに参加してきました。 JJUG CCC 2023 Fall 前回のCCCの参加が2017 Fallだったみたいなので、実に6年ぶりの参加になりました…。 JJUG CCC 2017 Fallに参加してきました #j…
これは、なにをしたくて書いたもの? Jakarta EEのプロジェクトのとっかかりを作れる、Eclipse Starter for Jakarta EEというものがあることは知っていたのですが、使わないまま 存在を完全に忘れていたので、1度試しておくことにしました。 Eclipse Starter…
これは、なにをしたくて書いたもの? Java 11からHTTPクライアントが導入されましたが、そういえば触ったことがありませんでした。 自分でも1度試してみようかなということで。 JEP 321: HTTP Client HTTPクライアントは、「JEP 321: HTTP Client」で導入さ…
これはなにをしたくて書いたもの? Java 16からRecordsが導入されましたが、使ったことがなかったので自分でも扱っておこうかなと。 JEP 395 Records RecordsのJEPはこちら。 JEP 395: Records ドキュメントとしては、こちらを見るのがよいでしょう。 Java言…
これは、なにをしたくて書いたもの? JavaでUUIDを使おうと思ったら、java.util.UUID#randomUUID#toStringでバージョン4のUUIDを使っていると思います。 UUID (Java SE 17 & JDK 17) でも、UUIDってバージョン4以外にも種類がありましたよね、ということで、…
これは、なにをしたくて書いたもの? Java VMのヒープサイズを指定するオプションといえば、-Xmx(下限値)と-Xmx(上限値)だと思います。 これらのオプションは、ヒープサイズを直接指定するものですが、パーセンテージでも指定できる-XX:InitialRAMPercen…
これは、なにをしたくて書いたもの? Javaのクラスファイルを検索できる、Jandexというライブラリーがあります。このブログ内でも間接的に何度か扱ってきているのですが、 いつの間にかorganizationが移っていたりドキュメントができたりしていたので、この…
これは、なにをしたくて書いたもの? ふだん使っているLinuxはUbuntu Linux LTSなのですが、各LTSでどのバージョンのOpenJDKをインストールできるのかなと思って 少しまとめてみました。 特になにも設定せず、apt installでインストール可能なUbuntu Linuxの…
これは、なにをしたくて書いたもの? ArchUnitというものを試してみたいな、ということで。 ArchUnit ArchUnitは、Javaソースコードのアーキテクチャーをチェックするためのユニットテストフレームワークです。 ArchUnit is a free, simple and extensible l…
これは、なにをしたくて書いたもの? TerraformのProviderを見ていると、Sonatype Nexus用のProviderがあったのでちょっと試してみたいなと。 Nexus Provider Nexus Provider Sonatype NexusのTerraform Providerです。 Nexus Provider リポジトリーの定義な…
これは、なにをしたくて書いたもの? Logbackを使ってログ出力をする時に、ログメッセージを置換する方法はないかな?ということで調べてみました。 以下の方法がありそうです。 replace変換指定子を使う 自分でConverterを作成する MaskingJsonGeneratorDec…
これは、なにをしたくて書いたもの? 前に、ElasticMQを使ってAmazon SQSの可視性タイムアウトを試してみました。 Amazon SQSの可視性タイムアウトをElasticMQで確認する - CLOVER 今度は、デッドレターキューを試してみたいと思います。 Amazon SQSデッドレ…
これは、なにをしたくて書いたもの? HikariCPのMySQL Connector/J(MySQLのJDBCドライバー)に関するWikiを見ていて、ふと疑問に思ったことがありまして。 MySQL Configuration · brettwooldridge/HikariCP Wiki · GitHub それは、rewriteBatchedStatements…
MySQLのJDBCドライバーであるConnector/Jですが、どのようなプロパティを設定した方がいいのかよく忘れるので。 いい情報はないかな?と思ったら、HikariCPのWikiによくまとまっていました。 MySQL Configuration · brettwooldridge/HikariCP Wiki · GitHub …
これは、なにをしたくて書いたもの? 以前、こんなエントリーを書きました。 Database RiderをSpring Framework(Spring Boot)と合わせて使う - CLOVER Spring Framework 5以降であれば、rider-junit5を使うのがよいのだろうと思ったのですが、ちょっと気に…
これは、なにをしたくて書いたもの? AWS SDK for Java 2.xを使うと、APIの各種レスポンスからSdkHttpResponseというインターフェースのインスタンスを取得することが できます。 こちらですね。 SdkHttpResponse (AWS SDK for Java - 2.20.17) このクラスに…
これは、なにをしたくて書いたもの? Java 15で、JEP 378 Text Blocksが導入されました。 JEP 378: Text Blocks すでに時々使っているのですが、改行や空白の扱いなどを雰囲気で使っているので、1度ちゃんと見ておこうかなと思いまして。 JEP 378: Text Bloc…
これは、なにをしたくて書いたもの? DateTimeFormatterで文字列として表現された日時をパースする時に桁数や空白の扱いについてあまり意識していなかったので、 ちょっと見てみることにしました。 DateTimeFormatter (Java SE 17 & JDK 17) 環境 今回の環境…
これは、なにをしたくて書いたもの? Jacksonを使ってオブジェクトをJSONにシリアライズする際に、nullのプロパティの出力は抑制したくなることがあります。 JSONにした時に、以下のような状態を { "property1": "value1", "property2": null } こうする、と…
こちらのエントリーを書いていて、IntelliJ IDEAを使ってコマンドラインでファイルをフォーマットできることがわかったので、 軽くメモしておきます。 Formatter Maven Pluginで、ソースコードのフォーマットを行う - CLOVER ドキュメントはこちら。 Format …
これは、なにをしたくて書いたもの? Javaでプログラムを書いていて、ソースコードを一括でフォーマットしたり、フォーマットするのを忘れないようにしたいとかいう 話があると思います。 こういうのを調べてみると、たいていEclipseのフォーマッターをCLIで…