Java
これは、なにをしたくて書いたもの? ちょっとJUnit 5の拡張(Extension Model)について知っておきたいなと思いまして。 JUnit 5のExtension Model JUnit 5を拡張する機能がExtension Modelです。 JUnit 5 User Guide / Extension Model 参考) JUnit 5の拡…
これは、なにをしたくて書いたもの? Apache Mavenをdaemonとして実行できるというMaven Daemonを試してみようかなということで。 Maven Daemon(mvnd) Maven DaemonのGitHubリポジトリーはこちら。 GitHub - apache/maven-mvnd: Apache Maven Daemon Gradl…
これは、なにをしたくて書いたもの? 組み込み、インメモリーなデータベースとしてテストなどでよく使われるH2 Databaseですが、どういう利用形態があるかちゃんと見てきて いなかったので、少し見ておきたいなということで。 自分はインメモリーで使うこと…
これは、なにをしたくて書いたもの? Jakarta EE PlatformおよびProfileおよびMicroProfileで使うAPIのJARやBOMについて、少しまとめておきたいと思いまして。 ここでは、Jakarta Servletといった個々の仕様の話よりも、Web Profileといったある程度の仕様を…
これは、なにをしたくて書いたもの? HTTPリクエスト/レスポンス(クライアント、サーバー)のログ出力をしてくれる、Logbookというライブラリーがあります。 1度試しておきたかったので、今回はSpring Bootで試してみることにしました。 Logbook Logbookの…
これは、なにをしたくて書いたもの? 使用しているJava環境でサポートしているSSL/TLSプロトコルや、暗号スイートを確認したいなと思いまして。 特にこれを書こうと思ったきっかけはSSLSocketFactory#getSupportedCipherSuitesとSSLSocketFactory#getDefaul…
これは、なにをしたくて書いたもの? これまでよくOpenAI API互換のサーバーにOpenAI Python APIライブラリーからアクセスして試していたのですが、1度Javaからも アクセスしてみようかなと思いまして。 アクセス先としては、llama-cpp-pythonを使うことにし…
これは、なにをしたくて書いたもの? 前に、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のヒープサイズを指定するオプションといえば、-Xms(下限値)と-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 …