2009-02-02から1日間の記事一覧

辞書と天気予報

bluewind でgoogle検索 - ihirokyの日記に続いて、辞書や天気予報など登録しておくと便利。ブラウザにフォーカスがあたっているときはubiquityなんだけど、ブラウザを探さなきゃいけないときはやっぱり便利。英辞郎 on the WEB パラメータ:-new-tab http://…

MessageResourceでの「'」

<移行分> Springframeworkというか、ResourceBundleのお約束事なのかな。 MessageResourceを扱うとき、メッセージの定義が argument.required=the argument '{0}' is requiredであるとして、{0}に hoge を当てはめるつもりで以下のようなコードを書くと怒…

32bit CentOS 上 JVM の最大ヒープは2.5GBぐらい

32bitCentOS上でJVMのヒープをどれくらい取れるのか調べてみた。XenServer上なのでXenの影響は不明。メモリは十分(6GB)。起動デーモンの状態によりそうだけど、安定してとれるのは2.5Gぐらい。もうちょっとがんばると下のような感じ。 $ java -Xmx2625M -X…

Enumのvalues()はフィールドのシャローコピー

コンパイラが生成する(?)、Enumのフィールドにある要素の配列の参照がそのまま帰ってくると思ったら、コピーされた別の配列が返ってくる。試したバージョンは6u7。元の列挙型 public enum EnumTest { A, B, C } コンパイル、そしてjad $ javac EnumTest.j…

小文字 大文字 変換

$ echo abc | tr '[a-z]' '[A-Z]' ABC

NICのMACアドレスを変更する

NICがdownの状態で、 # ifconfig <NIC> ether <MACアドレス> Linuxでは と ether の間に hw を入れるのだとか。ハードレベルでは変わっていないのかもしれないけれど、MACアドレスを変更できるという事実に驚き。</macアドレス></nic>

Solaris NIC有効化

e1000g3:デバイス名(/etc/path_to_instあたりで何があるか調べられる) # ifconfig e1000g3 plumb # ifconfig e1000g3 <ip address> netmask <netmask> # ifconfig e1000g3 up # echo <hostname>.e1000g3 > /etc/hostname.e1000g3 # (/etc/hosts に <hostname>.e1000g3 のIPアドレスを記述 plumb の反</hostname></hostname></netmask></ip>…

evalで実行されるコマンドの戻り値をとる

コンフィグにコマンドのテンプレートを記述し、そのテンプレート実行結果を取得するためにevalする。 $ host=hogehoge $ TMPL='/usr/bin/ping $host 1 1' $ eval "$TMPL > /dev/null; echo $?" 0 hogehogeなんてhostは存在しないので、1 を期待したけど、 ev…

イーサネットのリンクスピード、デュプレックスなどを表示@Solaris

dladmコマンドの show-dev, show-link オプション。 $ /usr/sbin/dladm show-dev e1000g0 link: up speed: 100 Mbps duplex: full e1000g1 link: up speed: 100 Mbps duplex: full e1000g2 link: up speed: 100 Mbps duplex: full $ /usr/sbin/dladm show-li…

エンコード後バイト列の長さ

java.nio.charset.CharsetEncoderでエンコードしたときのエンコード後の長さをエンコード前に調べるには averageBytesPerChar() / maxBytesPerChar() に入力文字数をかけて見積もる。今回EUC-JPにエンコードしたく、それぞれ出力値を調べてみる。 CharsetEnc…

Solaris TCP チューニングパラメータ

パラメータの一覧表示 $ /usr/sbin/ndd /dev/tcp \? 設定値閲覧(たとえばTCPのバッファ) $ /usr/sbin/ndd /dev/tcp tcp_max_buf 1048576 パラメータの説明はここがわかりやすい。 http://homepage3.nifty.com/owl_h0h0/unix/job/UNIX/network/tcp_tune_sun…

ANYアドレスでServerSocketをバインドさせる

ServerSocketがbind()するとき、そのエンドポイント指定に使うInetSocketAddress作成で、 第一引数にInetAddress.getByName("0.0.0.0")を渡す 第一引数にInetAddress.getByName(null)を渡す と、ANYでバインドする。つまり、上記の二つのInetAddressがANYア…

bashとviで日本語入力

~/.inputrc set meta-flag on set convert-meta off set input-meta on set output-meta on ~/.vimrc set encoding=japan set fileencodings=iso-2002-jp,utf-8,euc-jp,cp93

cygterm

コマンドプロンプトにbashだと不便なことも多いので cygterm 導入。 というよりteratermの中に入ってた。・teraterm起動 -> 設定 -> その他設定 -> cygwinタブ cygwinインストール先のパスを設定 ・念のため 設定 -> 設定の保存 ・cygtermへのショートカット…

ウィンドウズフォルダを bash から開く

シェルを使っていても不意にGUIな操作をしたいときがある。 そんなときは $ explore.exe <dir> で指定ディレクトリ開ける。 さりげなく便利。</dir>

vista で cygwin の X が立ち上がらないので rebaseall

vista上のcygwinでXをあげるとき、 ・・・ xterm: Error 29, errno 11: Resource temporarily unavailable Reason: spawn: fork() failed xinit: Resource temporarily unavailable (errno 11): こんな感じのエラーがでる。google先生に伺うとrebaseallしな…

シェルで改行の変換(Windows->Unix)

シェルと ls, mv, sed でWindowsな改行をUnixな改行に変換。^M は vi 上でキーを Ctrl+v, Ctrl+m と押下。とりあえず .java, .properties, .xml, .txtを変換対象にしてる。ディレクトリを指定すると、そのディレクトリ内(含サブディレクトリ)ファイルに対…

メッセージの国際化

とりあえずデフォルトメッセージと日本語用メッセージを用意。それぞれ文字コードをUTF-8にしておく。(native2asciiはしない) messages.properties (デフォルト名+.properties) pstyle.crypt.Tool.location_is_null=--location option is required. pstyle…

秘密鍵 / 公開鍵 を生成して署名

署名を生成するための秘密鍵、書名の確認を行うための公開鍵の生成。 アルゴリズムは "RSA" とか "DSA"とか。 public CryptKeyPair generate(String keyAlgorithm, int keyLength) { try { KeyPairGenerator generator = KeyPairGenerator.getInstance(keyAl…

共通鍵方式で 暗号化 / 復号化

まず鍵生成。アルゴリズムは "AES" とか "DESede" とか "Blowfish" とか。 public CryptKey generate(String keyAlgorithm, int keyLength) { try { KeyGenerator generator = KeyGenerator.getInstance(keyAlgorithm); SecureRandom random = SecureRandom.…

JCE参考サイト

・セキュリティー http://java.sun.com/javase/ja/6/docs/ja/technotes/guides/security/index.html Javaにおけるセキュリティ全般の説明。 ・Java ™ 暗号化アーキテクチャー(JCA) リファレンスガイド http://java.sun.com/javase/ja/6/docs/ja/technotes/gu…

tex数式画像を生成できる mimetex

mimetexは img タグに埋め込んでtexみたいに数式生成をできるスグレもの。たとえば、 <img src="/cgi-bin/mimetex.cgi?\int_{1}^{e}\frac{1}{t}dt=1" /> まずはコンパイル。 $ gcc -DAA mimetex.c gifsave.c -lm -o mimetex.cgi シェル上でたたくとアスキーで表示される。 $ ./mimetex.cgi '\int_{1}^{e}\frac{1}{t}dt=1' +-…

Base64 エンコード / デコード

エンコード。3バイト分のデータを4文字に変換。dataはバイト列。forの真ん中がlength-2なのは3バイトであまるものをはじくため。3バイトずつ処理して、データのお尻で余ったもの処理を入れた。 public String encode(byte[] data) { char[] charBuffer = new…

SpringでJMS

コネクション、例外ハンドリングがまったく出てこないのが特徴的。メッセージ送る側。 public class JmsQueueSender { private JmsTemplate jmsTemplate; private String destination; public void setConnectionFactory(ConnectionFactory cf) { this.jmsTe…

個人的には闘うパパに一票

Googleさんに聞いてみると、内柴 オリンピック に一致する日本語のページ 約 33,400 件中 1 - 10 件目 (0.25 秒) 北島 オリンピック に一致する日本語のページ 約 579,000 件中 1 - 10 件目 (0.22 秒) 話題性の大きさからこんな数字になったのかもしれない。…

スーパータイプでアドバイスするとダウンキャストできない

public class FooDTO implements FooService { こんなシグネチャを持つクラスにFooServiceで、すなわち execution(* examples.jdbc.FooService.*(..))でトランザクションマネージャをアドバイスする。このアドバイスされたインスタンスに対して、FooDTOにダ…

SimpleJdbcTemplateに甘えすぎた

JdbcTemplateのsyntax sugarなSimpleJdbcTemplate。文法が甘いだけに、恥ずかしいエラーで立ち止まる。SimpleJdbcTemplateで使うのRarameterrizedRowMapper public class FooRowMapper implements ParameterizedRowMapper { @Override public Foo mapRow(Res…

ResourceBundle, MessageSourceでproperties内に日本語でメッセージを書く

<移行分> ResourceBundle, MessageSourceでproperties内に日本語でメッセージを書く Java6のJavaDocを眺めていると、ResourceBundle を拡張する ResourceBundle.Control というものがあるらしいことに気づいた。つまりUTF-8指定した Properties を使う Res…

F1をEscにする

<移行分> Escキーを多用する身としてはF1でいちいちヘルプが出てくるのは邪魔で仕方がない。ExcelでF2を使ってるときもたまに邪魔。というわけで、F1をEscに変換。[Windows] Change Keyでレジストリ書き換え。 http://satoshi.web5.jp/f_soft/dw_win.htm[X…

Excel2007が必要だけどxlsxをxlsに一括変換

追記:いまならDownload: Word/Excel/PowerPoint 用 Microsoft Office 互換機能パック - Microsoft Download Center - Download Detailsとか無料総合オフィスソフトウェア - Apache OpenOffice.org 日本語プロジェクト。<移行分> 嫁さんのPCのExcelが2007…