メモの日々


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ケア