タグ

javaに関するsrkzhrのブックマーク (103)

  • final原理主義 - R42日記

    僕は昔からずーっと、finalを付けられる箇所にはすべて付けるようにしています。 ちなみにEclipseを使うと、セーブアクションで自動的にfinal宣言できるので超便利です。 不変オブジェクトを作るために、インスタンスフィールドをfinal宣言するようなケースは当然として、ローカル変数やメソッドの引数にも、finalを付けると素晴らしいメリットを享受できるのです。 その中でも一番重要なメリットは、 『意図していない代入を自動的にチェックできる』ということ。 例えば、誰かの書いたソースを読むときに int value1 = 1; final String value2 = this.calcValue2(); という宣言があったならば、この時点で 『なるほど、value2はこの時点で値が固定なんだね』 ということが判明するわけです。 ということは、この宣言以降のコードを読むときにvalue

    final原理主義 - R42日記
    srkzhr
    srkzhr 2011/01/22
    ]
  • Debugging with the Maven Jetty Plugin inside Eclipse - Jetty - Codehaus

    Contact the core Jetty developers at www.webtide.com private support for your internal/customer projects ... custom extensions and distributions ... versioned snapshots for indefinite support ... scalability guidance for your apps and Ajax/Comet projects ... development services from 1 day to full product delivery Debugging with the Maven Jetty Plugin in Eclipse Step 1 Go to the Run/External Too

    srkzhr
    srkzhr 2011/01/14
  • 【コラム】攻略! ツール・ド・プログラミング (41) Javaで非同期なHTTP通信を行うための「AsyncHttpClient」 | エンタープライズ | マイコミジャーナル

    Java用の非同期HTTP通信ライブラリ AsyncHttpClentはJavaプログラムにおいて非同期のHTTP通信を行うためのクライアントライブラリである。Javaに標準で付属するHTTP通信用のUrlConnectionクラスは最低限の機能しか実装されていない。ApacheのJakarta Commonsプロジェクトの成果物であるApache HttpClientは高性能ではあるが、クライアントプログラムはサーバからのレスポンスを待ってから処理する同期通信を行う。また、メモリ上にバッファリングを行うため巨大なファイルの送受信に適していないことや、I/OライブラリがApache HttpClientで提供されるものしか使えないといった問題がある。 AsyncHttpClientの場合、クライアントプログラムがサーバのレスポンスを待たずに処理を続行する非同期通信を行うことができる。速度優

    srkzhr
    srkzhr 2010/12/24
  • Struts1に代わるWebフレームワークの選択 - 達人プログラマーを目指して

    先日書いたいつまでStruts1を使い続けるの? - 達人プログラマーを目指してが想像以上の反響の大きさで驚いています。こんなにたくさんブクマいただいたのはブログ開設以来初めてです。政治的理由でフレームワークが最初から天下り的に与えられてしまい、結果的に要件に合わないフレームワークの使用を強いられて苦労させられた経験のある開発者の方も多いと思います。また、逆にフレームワークを提供したり選択したりする側の立場で、時代遅れのフレームワークを今後どうにかしなくてはならないという問題意識を持たれている方も多いのではないかと思います。(これは、ちょうど多くの会社のパソコンでWindows XPやIE6ではさすがに時代遅れだと認識はしていても、コストなどからなかなか思うようにバージョンアップが進まないというのと似たところもあると思います。*1)Struts1が既に時代遅れなのは知っているけれど、抱えて

    Struts1に代わるWebフレームワークの選択 - 達人プログラマーを目指して
    srkzhr
    srkzhr 2010/11/19
  • Jackson JSON Processor - Home

    News: 04-Jun-2009: Jackson 1.0.1, minor patch release with a single fix, released. 08-May-2009: Jackson 1.0.0 released 27-Apr-2009: Second 1.0 release candidate (0.9.9-6) released: much improved Jax-RS provider for doing "Clean Json" on Jersey 20-Apr-2009: First 1.0 release candidate (0.9.9-5) released! 14-Apr-2009: 0.9.9-4 released, generics-related bug fixes. Getting yet closer to 1.0.0... 03-Ap

  • NullPointerExceptionなどの標準例外を使っていないわけ - taediumの日記

    Domaでは、Daoのメソッドに期待されない引数(nullとか)が渡された場合に例外をスローしますが、そのときの例外にNullPointerExceptionやIllegalArgumentExceptionを使っていません。代わりに、DomaNullPointerExceptionやDomaIllegalArgumentExceptionといったDoma独自の例外を投げます。 これはなぜかというと、Daoのメソッドに対する事前条件を満たしていないのか、それともDoma自身にバグあって例外がスローされてしまっているのをわかりやすくするためです。 つまり、DomaNullPointerExceptionやDomaIllegalArgumentExceptionがスローされるということは、「これはDomaが意図的にスローしています。なんらかの条件を満たしていません。」というメッセージです。そし

    NullPointerExceptionなどの標準例外を使っていないわけ - taediumの日記
    srkzhr
    srkzhr 2010/08/26
  • RESTEasy - JBoss Community

  • http://appwrench.onpositive.com/

  • This Site Has Moved - Hyperpolyglot

    Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License

  • OutOfMemoryErrorが発生したときにきちんとJavaプロセスを殺す - nekop's blog

    OutOfMemoryErrorが発生してもスレッドを異空間に葬るだけでJava VMはそのまま動き続ける場合があるけど、当然ながら状態に一貫性のない状態で動いている可能性があるわけで基的にはとっとと死んで欲しいわけである。一般的に言うところの「不定」状態。OOMEはErrorであってふつうの例外ではなく、致命的なJava VMエラーを示すものである。OOME発生後にプロセス再起動しないでそのままどうこうしようというのは絶対に避けた方が良い。 例えばJDBCのコネクションオープンしてDBからデータを読み込んでるときにOOMEが起きた場合、JDBCコネクションは大抵オープンしっぱなしで回収はされなかったりする。OOMEではfinallyブロックが呼ばれる保証はない。JDBCコネクションリークくらいならまだ良い方だが、これは全てに当てはまる。A-B-Cといったセットになっている処理は例外など

    OutOfMemoryErrorが発生したときにきちんとJavaプロセスを殺す - nekop's blog
    srkzhr
    srkzhr 2010/06/26
  • Java から Cassandra を使ってみる その7 - akishin999の日記

    Windows で Cassandra を動かしてみる Java から Cassandra を使ってみる その1 Java から Cassandra を使ってみる その2 Java から Cassandra を使ってみる その3 Java から Cassandra を使ってみる その4 Java から Cassandra を使ってみる その5 Java から Cassandra を使ってみる その6 の続きです。 batch_mutate() を使ってみる データの一括登録・更新を行う batch_mutate() メソッドを Java から使ってみました。 引数の構造が若干複雑なため、実際に呼び出してみるまでの準備の段階が面倒臭いです。 package example.cassandra; import java.io.UnsupportedEncodingException; impo

    Java から Cassandra を使ってみる その7 - akishin999の日記
  • Maven2 Heap Overflow in JUnit test cases: Howto increase memory

  • Two Minute Tutorial | JBehave

  • http://java.syntaxerrors.info/index.php?title=Inconsistent_hierarchy

    srkzhr
    srkzhr 2010/03/10
  • Wikispaces

    We are sorry, but the site you are looking for no longer exists Wikispaces was founded in 2005 and has since been used by educators, companies and individuals across the globe. Unfortunately, the time has come where we have had to make the difficult business decision to end the Wikispaces service. We first announced the site closure in January 2018, through a site-wide banner that appeared to all

  • Mockitoノススメ - Fly me to the Luna

    モックライブラリ使ってますか? 僕はJavaの人なので、主にJUnitを使ってテストコードを書いています。テストコードを書いている最中、「もしこのオブジェクトから例外が帰ってきたら、ちゃんと例外のハンドリングができてんの?」等々、既存のオブジェクトの振る舞いを差し替えたくなることってありませんか?そういうときにモックライブラリを使うと、既存のオブジェクト処理を差し替える事ができます。 実は最初はモックライブラリって意味あるの?と懐疑的だったんです。どういうところに懐疑的だったかというと、 テストコード中に出てくるモックライブラリのセットアップがめんどい。 テストコードがプロダクトコードの実装に依存しちゃうんじゃないの?プロダクトコードをちょっと変えただけでテストが落ちるようになるんじゃないの? みたいなところです。でもMockitoというモックライブラリを使ってテストコードを書き初めてから

    Mockitoノススメ - Fly me to the Luna
  • Java総称型メモ(Hishidama's Java Generics Memo)

    メソッドの総称型 メソッドのみに総称型を適用した定義を行うことも出来る。[2007-06-12] 戻り値の型の直前に「<仮型引数, 仮型引数…>」を置くだけ。後はクラスの場合と同様。 public static <T> T notNull(T arg1, T arg2) { T ret; if (arg1 != null) { ret = arg1; } else { ret = arg2; } return ret; } このメソッドを呼び出す側は、クラスの場合とは異なり、明示的に型引数を指定する必要は無い。 指定した引数の値に応じて、自動的に型が判断される。 String s = notNull("abc", "def"); //型引数はString Long l = notNull(new Long(1), new Long(2)); //型引数はLong int i = notNu

    srkzhr
    srkzhr 2010/02/22
    "catch節(JavaVM)の方が<T>の付いた形式に対応してないから(具体的にはHogeEx<T>とHogeEx<V>を別でcatchできないから)"
  • Eclipseのキーバインドをvim風にできるVrapperが素晴らしすぎる件について - ( ꒪⌓꒪) ゆるよろ日記

    俺はエディターはvim派です。指が覚えてしまっているので。 普段はターミナルでvimを使っていて、Javaのコードを書くときだけEclipseな生活なんですが、Eclipseのエディターは、 なので、常々不満に思っておりました。 いままで、Eclipseのキーバインドをvim風にする、vipluginやEclimなどを試してみたのですが、vipluginはeclipseの補完がうまく働かない、Eclimはeclimdを起動させておく必要がありちょっと大げさ、など「これだっ!」というものがありませんでした。 そこで、「Vrapper」さんの登場ですよ! Eclipseのエディターがvim風のキーバインドで使えます。しかも、Eclipseの補完機能なども同時に使えます! Vrapperのインストール Eclipseの更新サイトに"http://vrapper.sourceforge.net/u

    Eclipseのキーバインドをvim風にできるVrapperが素晴らしすぎる件について - ( ꒪⌓꒪) ゆるよろ日記
  • Java変態文法最速マスター - プログラマーの脳みそ

    Java基礎文法最速マスター - いろいろ解析日記をリスペクト。 Javaの変態文法・技法一覧です。Javaの基礎をある程度知っている人はこれを読めばJavaの変態をマスターしてJavaを書くことができるようになっています。簡易リファレンスとしても利用できると思いますので、これは足りないと思うものがあれば教えてください。 1.基礎 エンクロージング型内部classの作成 外部classのインスタンスに紐付くインスタンスを生成します。外部クラスのインスタンス - 内部クラスのインスタンス間に、クラス - インスタンスのような関係を持たせることができます。 public class Outer { public class Inner { } } というようなクラスを作った場合、 Outer o = new Outer(); Inner i = o.new Inner(); となります。new

    Java変態文法最速マスター - プログラマーの脳みそ
    srkzhr
    srkzhr 2010/02/04
  • Javaのメモリ管理

    日のカクテルは「Javaのメモリ管理」です。 ネタ元はかつのりさんのBlogです。 GCについて勘違いしている人が結構多い JavaというとGC(ガーベッジコレクション)によって不要となったオブジェクトが回収される仕組みになっていますので、一般のプログラマはメモリの確保、解放について考える必要がありません。 ただし、プロフェッショナルなプログラマの方は一般のプログラマの分まで背負い込んで考えてもらう必要があります。 C言語のようにメモリの割り当てと解放を直接管理することはありませんが、まったく別種のメモリ管理が必要となってきます。 参照の種類 「要するに、参照がなくなればGCに回収される、参照があれば回収されない、それだけのことだろう?」 こうおっしゃるお客さんは沢山いらっしゃいます。では、参照にも種類があることをご存じですか? 強い参照 (strong reference) ソフト参照

    srkzhr
    srkzhr 2010/02/04
    まとめ