You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
Play framework http://www.playframework.org/ 参照記事(ありがとうございます!!) Javaで軽快に使える「軽量フレームワーク」特集~本格的なRoRスタイルフレームワーク「Play!」(1) Javaで軽快に使える「軽量フレームワーク」特集~本格的なRoRスタイルフレームワーク「Play!」(2) Javaで軽快に使える「軽量フレームワーク」特集~本格的なRoRスタイルフレームワーク「Play!」(3) 以下、WindowsによるEclipse導入までのログ短縮版。 1.プロジェクト雛形作成 <playの解凍先>\play new <アプリケーション名>(短縮名称) ~ What is the application name? こう聞かれるので、<アプリケーション名(フル名称)> を入力、Enter ~ OK, the application
サーブレットのユニットテストのやり方。 次のようなサーブレトの doGet() が、JavaDoc の仕様どおりに動作する事を、JUnit で検証するにはどうするか。 public class HelloServlet extends HttpServlet { private static final long serialVersionUID = 1L; @EJB private HelloBean helloBean; /** * req から 取得した GET パラメータ user を、helloBean の * sayHello()メソッドに渡し、その戻り値を res から取得した * PrintWriter に書き出す。 */ protected void doGet( HttpServletRequest req, HttpServletResponse res) throw
久しぶりにEclipseを起動して、jMockのプロジェクトを作ってモックの動作を試してみる。動作環境は下記の通り。 MacOS X 10.6.4 (Snow Leopard) Eclipse 3.5 (Galileo) 下記のサイトを参考にしてプロジェクトを作成した。 ライブラリには下記を使った。 hamcrest-core-1.1.jar hamcrest-library-1.1.jar jmock-2.5.1.jar jmock-junit4-2.5.1.jar テストを実行させてみると、下記の例外が発生してしまう。テストが上手く実行出来ていない。 java.lang.SecurityException: class "org.hamcrest.TypeSafeMatcher"'s signer information does not match signer informatio
Throwable、Exception、RuntimeException(RTE)、Errorあたりを整理しながら、色々考えてみた。私見に基づくので、間違っているかもしれないけれど、自分としては頭が整理できたかな、と感じたので晒してみる。異論があったらコメントください。 まず、一番基礎的なところで、継承関係の整理から。こんなツリーになっています。 Throwable Error Exception RuntimeException そして、本稿での用語の定義。caller=呼出す側のコード callee=呼出される側(throwする側)のコードとします。 Throwable Throwableは「throw文に指定できる何か」という意味ですね。 Instances of two subclasses, Error and Exception, are conventionally used
米Googleは2月4日、「Contracts for Java(cofoja)」をオープンソースとして公開した。オブジェクト指向プログラミング言語「Eiffel」に着想を得たツールで、Javaプログラミングにおけるデバッグ作業を容易にするという。 Contracts for Javaは、Javaに契約プログラミング(契約による設計とも呼ばれる)の概念を実装するツール。「契約」と呼ばれる、事前条件や事後条件、変数条件といった利用条件をJavaのBoolean表現としてアノテーション内で追加し、JVM argumentで有効にすることでランタイムレベルで契約が満たされているかをチェックできる。これにより、問題の発見が容易になるという。 同ツールは、勤務時間の20%を自分のプロジェクトに費やすGoogleの「20%ルール」から生まれたもので、同様に契約プログラミングをJavaに適用するJoha
Introduction With java.SizeOf you can measure the real memory size of your Java objects. Download it here The project is a little java agent what use the package java.lang.Instrument introduced in Java 5 and is released under GPL license. java.sizeOf is in early stage of development but it's quite usable and it was very useful for us to know the memory size of our HttpSession's objects. The best u
今月から,XMLとWebサービスに関するJava SE 6の新機能を紹介していきます。 今まで,WebサービスはJava EEだけで扱われていました。Java EEではWebサービスを提供する側の機能が中心になっています。しかし,提供するだけでなく,Webサービスを使う側の機能も重要です。 Java SE 6では,この使う側,つまりWebサービスのクライアント機能が取りいれられました。また,それに応じて,XMLを扱う機能も強化されています。 そこで,本連載ではWebサービスの基幹となる,XMLを扱う機能から紹介していくことにしましょう。 DOM,SAX,そしてStAX Java SE 6では,新しいXMLパーサが仲間入りすることになりました。その名はStreaming API for XML,通称StAXです。 StAXはJCPのJSR 173で標準策定が行なわれました。Java SEに取
OSCache is a widely used, high performance J2EE caching framework. In addition to it's servlet-specific features, OSCache can be used as a generic caching solution for any Java application. A few of its generic features include: * Caching of Arbitrary Objects - You are not restricted to caching portions of JSP pages or HTTP requests. Any Java object can be cached. * Comprehensive API - The OSCache
Overlay Weaver はオーバレイ構築ツールキットです。 アプリケーション開発に加えて、 オーバレイのアルゴリズム設計もサポートします。 アプリケーション開発者に対しては、 分散ハッシュ表 (DHT) やマルチキャストといった高レベルサービスに対する 共通 API を提供します。 この API を用いることで、 特定のトランスポートプロトコル、データベース、ルーティングアルゴリズム に依存しないアプリケーションを開発できます。 Overlay Weaver は、 ルーティングアルゴリズムとして Chord、Kademlia、Koorde、Pastry、Tapestry、FRT-Chord の実装を提供しています。 ルーティング層の分割によって、 これらのアルゴリズムをたかだか数百ステップで実装することが可能となりました。 ルーティング層は高レベルサービスの下位に位置し、 ルーティン
Java Native Access (JNA) とは、JavaプログラムがJava Native Interfaceを用いずにネイティブの共有ライブラリにアクセスする方法を提供するライブラリである。JNA は最小限の作業でネイティブコードにアクセスできることを目指して設計されており、決まりきったアクセスコードを書いたりグルーコードの生成を行ったりせず、ネイティブコードへ正しく簡単にアクセスすることを最優先としている(ただし、性能にも注意が払われている)。JNAライブラリはネイティブコードを呼び出すためにlibffiを用いており、名前を指定してライブラリをロードするネイティブの関数を用いて、目的のライブラリ関数の関数ポインタを取得する。ネイティブコードにアクセスする過程で静的なバインディング、ヘッダファイル、またコンパイルは必要ない。アプリケーションの開発者はJavaのインターフェイスを用
Section Navigation [Toggle] 14.5.3 memcached Interfaces14.5.3.1 Using libmemcached 14.5.3.2 Using MySQL and memcached with Perl 14.5.3.3 Using MySQL and memcached with Python 14.5.3.4 Using MySQL and memcached with PHP 14.5.3.5 Using MySQL and memcached with Ruby 14.5.3.6 Using MySQL and memcached with Java 14.5.3.7 Using the MySQL memcached UDFs 14.5.3.8 memcached Protocol The com.danga.MemC
memcachedのJava API(memcached client for java)を利用して性能測定をしてみました。以下は、1KBの文字列を10000回setしたとき、getしたときに必要とした時間です。Pythonと比較して並べてみました。 API set time get time python-memcached 1797msec(=5565event/sec) 2984msec(=3351event/sec) memcached client for java 2860msec(=3497event/sec) 5368msec(=1863event/sec) あらら、PythonがJavaに勝ったよ。 memcached client for javaでの計測環境は以下の通り。(python-memcachedでの計測と一緒です) クライアントもサーバも同一マシン。 OS:
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く