2008年11月25日(火) [長年日記]
- 連休中ゴロゴロしていたら、なんだか腰が痛い。なぜだ。
- frkwくんはペンギンに詳しい。
■ [java] Integer.valueOf(int i) を好め
Integer zero = new Integer(0);
のようなコードを書いていたらFindBugsに次のように注意されたのでメモ。
new Integer(int)の呼び出しは、常に新たなオブジェクトが生成されます。これに対してInteger.valueOf(int)は、コンパイラ、クラスライブラリ、JVMによってキャッシュすることが可能です。キャッシュを使用することによって、余計なオブジェクトの生成を防ぎ、コードの実行効率を改善できます。
Effective Javaの最初の項目に書いてある話だな。
Boolean.valueOf(boolean b) はバージョン1.4で追加され、Integer.valueOf(int i) は1.5で入ったみたい。なんで時間差があるんだろう。
Effective Javaの第2版発売日は明後日か。買わないと。
■ [java][db] Java DB の RUNTIMESTATISTICS を参照する
設定ファイルにderby.language.logQueryPlanを設定するとクエリープランをログファイルに出力できたが、SQLだけを使ってクエリープランを取得することもできたのでメモ。
Tuning Derbyというドキュメント内の How you use the RUNTIMESTATISTICS attribute にある通りだが、
CALL SYSCS_UTIL.SYSCS_SET_RUNTIMESTATISTICS(1); CALL SYSCS_UTIL.SYSCS_SET_STATISTICS_TIMING(1); MaximumDisplayWidth 10000;
とした後で(MaximumDisplayWidthは5000だと入りきらなかったので10000にした)任意のSELECT文を実行し、続けて
VALUES SYSCS_UTIL.SYSCS_GET_RUNTIMESTATISTICS();
を実行すると logQueryPlan を設定した場合と同じような(完全に同じかどうかは未確認)結果が出力された。
■ [service] 新しいはてなブックマークがイマイチ
はてなブックマーク が新しくなったみたいなんだけど、以前よりJavaScriptを積極的に使っていて操作が分かりにくくなった。慣れれば大丈夫なのだろうけれど。
ただ、ブックマークを追加するための新しいブックマークレットが、ブックマーク対象サイトでJavaScriptをオフにしていると動かないようなのが困る。ああ、既に指摘されているのか。改善されるといいけど。
それから、ブックマーク編集画面を簡単に開く方法が分からない。一応、http://b.hatena.ne.jp/ でのJavaScriptをオフにすると「ブックマークを編集する」というリンクが現れてそこをクリックすれば開けた。JavaScriptオンだとリンクが見当たらないんだがおれだけなのか。
あと、「デザインの変更」機能も動かない。NoScriptのせいだろうなあ。デザインは変更しなくてもいいからあまり困ってないけれど。
タグ名を置換できるようになっていたのはありがたい。これは以前からできていたのかも。
(追記)
新しいブックマークレットにはセキュリティ上の問題があるとの指摘があった。
- 新はてなブックマークの登録ブックマークレットは使ってはいけない (高木浩光@自宅の日記)
なるほど。はてな製ということで安直にパスワードを入力してしまった。「ブックマーク対象サイトでJavaScriptをオフにしていると動かない」という時点で何かおかしいと気付くべきだった。
この指摘を受けてか、はてブの ブックマークレットのセットアップページ の一番下に、古いブックマークレットへのリンクが追加されていた(ログインしないと見られない)。
■ やること
- お香典
- 洗顔
- O2ケア