Spring XML構成ファイルで16進リテラルを使用するにはどうすればよいですか?
<value>#{T(java.lang.Integer).decode("0xFF")}</value>
動作しますが、必要なすべての16進リテラルに対してそのような式を書くのは面倒です。ショートカットやシンタックスシュガーはありますか?
数回試した後、私はそれを手に入れました。誰かに役立つかもしれません:
問題は、実際にXMLでARGBカラー値を構成しようとしたことです。0xFFFF0000
は正しい値であり、255
アルファと赤、0
緑と青を意味します。しかし、それは有効な整数リテラルではありません(私にとってはちょっとした魔法です:Javaでintに変換する0xFFFF0000
と実際にはですが、この文字列の解析に失敗します)-65536
Integer.parseInt()
したがって、解決策は、longを作成し、intにキャストすることでした。
<value>#{0xFFFF0000L.intValue()}</value>