java

JJUG ナイト・セミナー「Javaパラレル処理の最前線」に参加してきた。 #jjug

9月17日にJJUG ナイト・セミナー「Javaパラレル処理の最前線」に参加してきました。 【東京】JJUG ナイト・セミナー「Javaパラレル処理の最前線」9/17(水)開催 - 日本Javaユーザーグループ/Japan Java User Group | Doorkeeper 申し込み開始の次の日?に申…

#jjug ナイト・セミナー「ビール片手にLT&納涼会」に参加してきました。

概要 2014/08/22(金)に開催された「JJUG ナイト・セミナー 「ビール片手にLT&納涼会」」に参加してきました。 JJUG ナイト・セミナー 「ビール片手にLT&納涼会」 8/22(金)開催 | 日本Javaユーザーグループ 【東京】【傍聴者募集】JJUG ナイト・セミナー 「…

Jacocoでコードカバレッジを測ってみた。

Jacocoプラグインでのレポート Jacocoが出力してくれるhtmlでのレポート Jacocoレポート形式をCoberturaの形式に変換して出力 GitHub - yamap55/jacoco_sample 経緯とか 今の現場ではEmmaを使用してコードカバレッジを測っていたようですが、EmmaはJava7対応…

糞コードを見て思った事

先日、こんな糞コードをみつけた。 String hoge = ""; if (!a.equals(b)) { hoge = b; } else { hoge = a; } 最初見た時に違和感を感じたのでよく見たらこれは簡潔に書ける。 String hoge = b; 一応解説。 上記コードは「!」があるからわかりくい。*1 「!」…

ユニットテストの並列実行

経緯 現場でのJunit実践入門の読書会にてユニットテストの並列実行について話題になったので調べてみました。 JUnit、Ant、Maven、Gradleでの実現方法をメモ。全てのコードはgithubに置きましたので興味のある方はどうぞ。(今更ながらgithubに初push) 尚、…

ランダムクラスを使用してhello worldを出力する件の解説

最初に Twitterで↓URLが凄いというのが流れていました。 java - Why does this code using random strings print "hello world"? - Stack Overflowコードを実行すると確かに「hello world」と表示される。 実行時に渡している数値を使用して乱数列を作成する…

社内「JUnit実践入門」読書会第二回まとめ #junitbook

前回に引き続き、第2回目の「JUnit実践入門」読書会を開催しました。 社内「JUnit実践入門」読書会第一回まとめ #junitbook - 旧山pの楽しいお勉強生活今回は参加者は少なかったですが、本格的なJUnitの内容になってきたこともあり充実した読書会になったと…

JVMはDNSキャッシュを保持している

はじまり Tomcat上で動作しているWebアプリケーションで、設定しているホストに通信ができなくなったとの問い合わせ。 聞いてみたら、hostsに書かれていたIPアドレスを変更したとのこと。 状況 サーバ[localhost]上のWebアプリケーションは「example」という…

社内「JUnit実践入門」読書会第一回まとめ #junitbook

社内で「JUnit実践入門」読書会を開催したのでそのまとめです。 読書会初回、私がこのような催しを開催するのも初だったのですが、5人も参加していただけました。今回の対象範囲は本当に基本的な部分だったので、私がそれなりにまとめた資料を読み進めつつ参…

パラメータ化テストでの例外確認方法がわからない #junit #q

新年早々JUnitでテストを作成していたのですが、例外のテストがうまくできないことに気づいた。 (コードはjavaっぽく書いてますがgroovyで動作確認しています。) class ASample { public int method(int i) { if (i > 10 || i < 5) { throw new IllegalArg…

enumの抽象メソッドはgroovyでサポートされてない? #jggug #q

表題の通り。 groovyでenum書いててコンパイルできなかったのでメモ。 (構文ミスってるかと思って何度も確認したので。。。) 前提 javaではenumで抽象メソッドを定義することが可能です。 これにより、新たに値を増やした際に抽象メソッドの実装漏れを防ぐ…

jdk5かつ、tomcat5.5.35以上か、6.0.33以上の場合にrequestパラメータが取得できない場合がある

先日、Strutsであるパラメータが空文字でActionFormに値が設定されるという事象に遭遇。 全てが取得できないとか、nullだとかならわかるんだけど、 「パラメータの値が1バイトの場合に空文字として設定」されるもんだから訳がわからない。かなり苦しんでなん…