タグ

ブックマーク / d.hatena.ne.jp/t_yano (7)

  • Glassfish v3.1が予想よりもすごかった - 矢野勉のはてな日記

    Java, glassfishこないだ、「Java FX & GlassFish合同勉強会」に参加してきました。個人用にVPSを契約していて、まあ普通にApache HTTP Serverとか入ってたんですが、結局私の使う機能ってほとんどJavaアプリケーションなので、ほとんどのリクエストはAJPでTomcatに転送してたんですよ。httpdはTomcatに転送するためだけにいるような状態。でいろいろ要件があってJMSとか使ったら楽なのに、というケースがあったりで、VPS移設に伴い、httpdを停止して、Glassfish v3に80番ポートを監視させることにしました。Glassfish v3はNIOフレームワークであるGrizzly Kernelベースってことで、スレッド爆発はしなさそうなのと、これはまだ計ってないけど、以前TomcatのNIO Connectorでテストしたときと同じく

  • 『JavaによるRESTfulシステム構築』読了 - 矢野勉のはてな日記

    Java, REST『JavaによるRESTfulシステム構築』を読み終わりました。オライリー様より献いただきました。ありがとうございます。JavaによるRESTfulシステム構築作者: Bill Burke,arton,菅野良二出版社/メーカー: オライリージャパン発売日: 2010/08/23メディア: 大型購入: 8人 クリック: 259回この商品を含むブログ (13件) を見るいろいろあって読む時間がとれなかったのですが、読み始めたら一気に読み終わってしまいました。あとid:Yoshioriが書のみどころをレビューしてくれているので、そちらも参照どうぞ。このは、RESTful Webサービスを開発するための標準Java API仕様として策定された、JAX-RSについての解説書です。JAX-RS仕様に基づいて作られた実装「RESTEasy」の開発者が書いています。このの冒頭

  • Genericsではまった - 矢野勉のはてな日記

    Java, メモ複合的な総称型にキャストするにはどうしたらいいんだろう? というのでちょっとはまったのでメモ。 こんなインターフェースがあります。インターフェースの内容自体は今回はどうでもいいのですが。 public interface Loggableextends MyClass> { Class getLogClass(); void setLatestLog(T log); } で、このLoggableインターフェースを実装していてなおかつMyClassのサブクラスであるインスタンスだけを処理するstaticメソッドがあります。 public static extends MyClass, T extends MyClass & Loggable> L create(T obj) { Class logClass = obj.getLogClass(); Object newObj

  • Javaの型パラメータ境界指定を使って型を合成する話 - 矢野勉のはてな日記

    Javaはい。開発者のあいだでAdvent CalendarがはやってるみたいなのでJavaでもやろうという話があり、早速はじめることにしました。Java Advent Calendar -ja 2010 : ATNDほんとは1日からはじめるものらしいんですが、いいじゃないですかそんなこと。5分で考えて5分でかけるものでOK、ということで、最近遊んでた、Javaで型を合成する話を書いてみようと思います。ネタがぱっと思いつかなかった…あらかじめ書いておくと「できるかなと思ったけどやっぱりできなかったね」という話に過ぎませんのでよろしく。戯れ言です。真剣に読むと損します。あと5分で書けませんでした。型合成Javaでインターフェイスをきるとき、メソッドの引数はおおむねすべてインターフェイスになるように設計するのがよいとされているようです。そうしてると「このメソッドの引数はMapだけど、このMap

  • jMockを使ったテストの実行,あるいは実クラスのモックを作成してテストする方法 - 矢野勉のはてな日記

    Java, Cayenne, jMockjMockの使い方を,いまさらながら調べたのでメモ的に記録しておきます。 ORマッピング・フレームワークであるApache Cayenneでは,多くのORマッパと異なり,データオブジェクト(エンティティ)がインタフェースを使っていません。Cayenneはバイトコード・エンハンスとかを使用しない作りなので,継承関係を用いてデータオブジェクトの機能が提供されてます。で,このデータオブジェクトのテストを実行する際にモックを使いたいのだけど,インタフェースがないからどうしよう,という話がありました。 答えは簡単な話で,ほとんどのモック・ライブラリは実クラスのモック化をサポートしています。今回はjMockを使いました。easyMockでも同じようなことは可能でしょう。pom.xmlへのライブラリの追加次のライブラリをMavenのpom.xmlに追加します。 o

  • 互いに関連のないオブジェクトを1つのインターフェースにまとめて共通的にアクセス可能にするライブラリを作ってみた - 矢野勉のはてな日記

    Javaもともとやりたかったことは、 あるオブジェクト(インスタンス)がすでに手元にある そのオブジェクトのクラスは何らかの理由で継承不能 そのオブジェクトの一部メソッドをオーバーライドしたい そのオブジェクトにメソッドを1つ足したいという、JavaScriptならすぐにできちゃうことがしたかった。で、これって、オーバーライドしたいメソッドと、追加したいメソッドだけを持ったあるオブジェクトAを用意して、メソッド呼び出し時に該当メソッドの時だけAに委譲しちゃえばできるよね、と思った。他のメソッドはすべてもとのオブジェクトに委譲する。 で委譲コードを書いてみても、すんごいめんどくさい。たくさんのメソッドを定義して、ただ委譲するだけのコードをかかないといけない。でCGLibあたりにそういうのがあるだろうと思って見てみたのですが、どうもないみたい。なんかありがちな要望だと思ったんですが、もうちょっ

  • Apache Wicket ベストプラクティス(日本語)を公開しました - 矢野勉のはてな日記

    Carsten Hufeさんがドイツ語英語で公開していた「Apache Wicket Best Practices」を、人に許可を得まして、英語版から日語に翻訳しました。公開は下記URLでやってます。Apache Wicket ベストプラクティス(日語)Wicketを使う上で、基的だけどとても重要なことがまとめられているので、Wicketプログラマには是非読んで欲しいです。余談ですが、ブログにJSとか入れられると便利なので、徐々にブログを移転するつもりです。こっちをどうするかはまだ未定ですが、今後の記事の追加は、上のURLのブログに行っていくと思います。ツイートする

  • 1