タグ

ブックマーク / www.javainthebox.net (7)

  • J2SE 5.0 Tiger 虎の穴 Instrumentation

    最近、よく目にするのがアスペクト指向という言葉。 あるプログラムの実行中に、指定されたところで別のコードの断片 (アスペクト) を挿入して自動的に実行してまうというのが基的な考え方だと思います。たとえば、JBoss は任意のオブジェクト (Plain Old Java Object 略して POJO なんて呼ばれています) を EJB に必要なコードを組み込んで、自動的に EJB に変換してしまうなんてことをやってくれるようです。 こういうことを Martin Fowler は Dependency Injection (依存性の注入) と呼んでいます。 コンテナに必要な処理を無理やり POJO に埋め込んでしまうわけです。 さて、こういったことをやるにはバイトコードを変更してしまうという方法もあります。今までバイトコード操作といえば Apache の BCEL や Javaasist

    fumokmm
    fumokmm 2014/07/30
    バイトコードをこねこねする話
  • J2SE 5.0 Tiger 虎の穴 Unicode 4.0 の補助文字のサポート

    ご存知でしたが、Unicode では char では収まらない文字があることを。 Java では言語が発表された当初から内部コードとして Unicode を採用してきました。もちろん、char は Unicode で文字が表される 16 bit になっていました。 だから、Unicode と char は相性がいいはずなのですが、今になって 16 bit では収まりませんでしたといわれても... Unicode で当初考えられていた文字数よりも地球上で使われる文字が全然多かったというわけですね。16 bit に収まらなかった文字を補助文字 (Supplementary Character) といいます。 補助文字が定義されたのは Unicode 2.0 からのようですが、実際に補助文字が使われたのは 3.1、そして Tiger では Unicode 4.0 をサポートするのです。ということ

    fumokmm
    fumokmm 2010/11/23
    サロゲートペアあたりの話。
  • J2SE, v1.4 の新機能 Preferences API

    ちょっとしたデータだけど、セーブやロードしたいものって結構ありませんか。 例えば、フレームの位置と大きさとか。ゲームのハイスコアとか。別にセーブしておかなくてもいいんだけど、できればセーブしておきたいですよね。 だからといって、こんなデータのために、わざわざ設定ファイルを作ったり、JNDI (Java Namind and Directory Interface) などを使うのも面倒です。Windows だったらレジストリがこんな用途に使えそうですが、Java から直接レジストリを扱う方法はないので JNI (Java Native Interface) を使って C/C++ のルーチンをコールして、そこからレジストリにアクセスするという方法になってしまいます。これはかなり面倒ですね。 こんなときに役立つのが Preferences API です。 単にデータのセーブとロードをしてくれる

    fumokmm
    fumokmm 2007/11/01
    Preferences API
  • J2SE, v1.4 の新機能 New I/O SocketChannel と Selector

    Java では RMI や CORBA などの ORB を使うことができますが、かといってソケットを利用した通信がなくなってしまうことはありません。異なるプラットフォームや Java 以外の言語で記述されたアプリケーションと通信を行うときなどはソケットがよく使われます。 Java 2 SE, v1.4 ではソケットも Channel として実装され、パフォーマンスが向上しています。 以前から存在した Socket クラスと ServerSocket クラスに相当するのが、SocketChannel クラスと ServerSocketClass です。また、DatagramSocket クラスに相当するのが、DatagramChannel クラスになります。 これらのクラスは単に既存のクラスを Channel として書き直したものではなく、新しい機能が付け加えられています。その機能の 1 つ

    fumokmm
    fumokmm 2007/05/11
    ソケットチャネル
  • J2SE 5.0 虎の穴 Java2 SE v5.0 Tiger の新機能

    「トラだ、トラだ、お前はトラになるんだ !!」 というわけで J2SE 5.0、コードネーム Tiger の新機能を紹介していきます。 まちがい、コメント等ありましたら、遠慮なくおねがいします。 JSR-176 J2SE 5.0 Release Contents http://jcp.org/en/jsr/detail?id=176

    fumokmm
    fumokmm 2006/12/13
    J2SE 1.5(5.0) の新機能解説
  • Java in the Box

    Java SE 6 コードネーム Mustang の新機能を紹介 あなたは野生馬を乗りこなせるか (2007.2.10 更新)

    fumokmm
    fumokmm 2006/12/02
    有用なJavaの技術記事
  • Java in the Box

    Java SE 6 コードネーム Mustang の新機能を紹介 あなたは野生馬を乗りこなせるか (2007.2.10 更新)

    fumokmm
    fumokmm 2006/09/07
  • 1