Java:動的プロファイリングの方法

Javaプログラムについて、ある処理を行った場合に通過するすべてのメソッドを検出したり、それにどの程度の時間がかかるのかを検出したい。
いわゆるプロファイリングというもので、それなりのツールが出ているようだ。優秀なものはそ ...
Java:ヒープサイズはどのように決定されるのか?

一般に、Javaプログラムがメモリ不足に陥った場合には、VMに-Xmxフラグをつけて最大ヒープサイズを指定しろと言われるのだが、そもそもデフォルトの最大ヒープサイズはどのように決定されるのだろうか?以下に答えがあった。
Defa ...MySQLのBLOBデータ型の最大サイズの理由が不明

MySQLのいわゆるBLOB型は、最大長によって型が異なっている。例えばバイナリ用の型としては、
TINYBLOB 最大長が 255 バイト。BLOB 最大長が 65,535バイト。
MEDIUMBLOB 最大長が ...
Flywayは使い物にならない

Flywayをしばらく使ってみたのだが、わざわざこれを使う意味が無いように感じるし、かえって煩わしくさえ感じるところだ。もちろん、その理由のほとんどはFlywayのせいではなく、SQL、しかもデータベースごとに方言の大きいDDL文のせ ...
Jooq:データベース名称を指定させない方法

jOOQによってコードジェネレーションを行うと、デフォルトではジェネレートされたコード中に「データベース指定」が行われているようだ。このために生成されるSQL文にもデータベース指定がされている。
これは非常に問題である。な ...
GWT:JsInteropの使い方、その1

もちろん、GWTには以前からJavaScriptのメソッドを呼び出したり、コールバックを受ける仕組みがあったのだが(JSNI)、JsInteropによってよりシームレスになっているという。現状で特に不便は無いが、使ってみようと思う。し ...
Jackson:アノテーション無しのカスタムシリアライゼーション・デシリアライゼーション

Jacksonにおいて、カスタムなシリアライゼーション・デシリアライゼーションを行いたいことがある。例えば、以下のオブジェクトについて、
class Foo { int a; int b;}...Foo foo = new Fo ...Java:JDK13のバグ

以下は、現時点2019/11/11時点のAdoptOpenJDK13、Windows用jdk-13.0.1.9-hotspotのバグである。
※本家のJDKも同じバグのあることを確認した(Windows 64bit)
Java:WebSocketクライアントを作成する

JavaアプリをWebSocketクライアントにしてみる。前提条件としては、既にWebSocketサーバが存在するものとする。これには様々なやり方があり、例えばJettyのwebsocket-clientを使ってJetty独自のAPI ...
GWT:スタイルシートから文字列値を得る方法

当然だがGWTでもスタイルシートを使って見かけを様々に変更することができるのだが、どうせならページに表示される文字列もスタイルシートに書いてしまいたい。
これはもちろん、GWTに限った話ではなく、一般的なJavaScrip ...