Java

部分文字列取得メソッド(substring) のパラメータ

Java だと startIndex, endIndex http://java.sun.com/javase/ja/6/docs/ja/api/java/lang/String.html#substring(int, int) .NET だと startIndex, length String.Substring メソッド (Int32, Int32) (System) SQL Server/ORACEL も startIndex, length SUB…

Java のコードをそのまま Groovy にコピペした際は、equals メソッドをオーバーライドしてたらハマる

同参照比較 は、Java では "==" ですが、Groovy では is メソッドです。 自分でもブログに書いていたんですが、すっかり忘れてました。 Object の同一性を確かめる - お だ のスペース Java で equals メソッドを override したコードを、そのまま GroovyCon…

6/18 大阪EffectiveJava読書会 第2回 で LT しました

大阪EffectiveJava読書会 第2回 : ATND で話す機会を頂いたので、LT(8分位) しました。 資料はこちら こんなEqualsは嫌だ View more presentations from odashinsuke Effective Java 第二版の 項目 8 equals をオーバーライドする時は一般契約に従う 項目 9 …

ZipEntry の name に / 始まりの名前を指定すると Windows 標準の解凍ツールでエラーが出る

ZipEntry(String name) コンストラクタ に "/" or "\" 始まりの名前を渡すと、Windows 標準の解凍機能で解凍出来ない。*1 Oracle Technology Network for Java Developers | Oracle Technology Network | Oracle ZipEntry (Apache Ant API) XP の場合は、 「…

メモ:Conracts for Java (cofoja)

Java で契約プログラミング Contracts for Java(cofoja) cofoja - Contracts for Java - Google Project Hosting Eclipse で使う Setting up Contracts for Java in Eclipse | fsteeg.com 時間が出来たら試してみる。

S2CSV の headerCheck が効かない?

s2csv - Reference @CSVEntity の headerCheck を true に設定すると、読み込んだ CSV のヘッダー部の文言と、@CSVColumn の columnName が等しいかチェックするとなっていますが、どうも正しく動いていない気がします。 ソースを見てみましたが、CSV パーサ…

Doma-Gen で PK に日付型を使っている場合に注意すること

PK に日付型を使っている場合、標準の SQL テンプレートでは、GenTest で生成したテストでエラーが発生してしまいます。 SQL テンプレート内の WHERE で、[PKカラム] = 〜 としている箇所で、数値型なら "1"、数値型以外なら、"a" を設定しています。これが…

Doma-Gen のエンティティクラスに共通のスーパークラスを指定する機能でハマったこと

Doma - Domaプロジェクトへようこそ という O/R マッパーを使っているのですが、これの開発支援ツールとして、Doma - Doma-Gen というツールがあります。 そのツールには、Doma - Genタスク という機能があるのですが、これでハマったのでメモ。 どんな事象…

S2Container の自動コンポーネント登録は、インナークラスは登録しない?

Creator とかよくわかってないですが、規約に沿っているインナークラス名でもダメな感じ。 なんか間違ってるのかな? [Seasar-user:7228] Seasar2.4.0 ???? より引用 - COOL deploy で内部クラスを対象としないように修正しました. これが影響してる? 良く…

JDBC でプリペアードステートメント を使ったクエリでハマった事

Microsoft 的には、「パラメーター化されたクエリー」って言うのかな。 んでハマったポイントは、GROUP BY にパラメータの値を渡しているとエラーになる場合がある事。しかも実際の値で動かすと正常に動作するから性質が悪い。 具体的な例を書くと… CREATE T…

メモ Hot Deploy と Cool Deploy で動作が違うこと

ハマったので調べて見つけたのをメモっとく。多分他にもあるんだろうなぁ…。 [Seasar-user:17537] Re: [SAStruts] S2ContainerListenerを登録すると起動時に HOT deploy の便利さに脳が停止した - イトウ アスカ blog Hot Deploy利用時に、Hot Deploy対象外…

メモ S2JUnit4 自動フィールドバインディング後の共通処理

前回の記事のコメントにて doboccho さんに教えてもらいました。忘れないようにメモ。 http://d.hatena.ne.jp/odashinsuke/20100402#c1270353740 S2JUnit4 @PostBindFields を使って、前回のコードを書き直すと… @RunWith(Seasar2.class) public class HogeT…

SAStruts の MessageResourceUtil を S2JUnit4 で使うには

今日調べていたら、SAStrutsのMessageResourceUtilを使っているソースでS2Unitを実行するには - 草木のにをいに誘われた を見つけたので何とかなりました。 ただ、S2JUnit4 の場合 S2TestCase を継承しないので、ServletContext をどっからか取得しないとダ…

synchronized でハマッた〜

Java の synchronized はメソッドに指定するだけではなく、ブロックにも指定出来るらしい。 こんな感じ synchronized (<object>) { // ロック中! } でこの、 は、ロックを取得する オブジェクト(参照型) を指定するんだけど、 Groovy の場合、値型 を渡してもコンパ</object>…

Windows Azure Tomcat Solution Accelerator の環境構築 & Groovlet が動いた!

Windows Azure で Tomcat 動いた! - お だ のスペース で書きましたが、Windows Azure Tomcat Solution Accelerator - Home の環境構築から Azure にデプロイ迄を書きます。 といっても、すごく簡単なんですが…。前提条件として、Microsoft Download Center…

Windows Azure で Tomcat 動いた!

Windows Azure Tomcat Solution Accelerator を触ってみます - お だ のスペース の続きです。 Tomcat 5.5 と JRE 6 をダウンロードし、手順にしたがって実行していくとあっさり動きました!まだ、Tomcat 上で動かす Webアプリが無いので Tomcat の Top ペー…

Windows Azure Tomcat Solution Accelerator を触ってみます

ここ三日程 を試してましたが、どうも Azure Storage にアクセスする事しか提供してないみたいでした。 PDC のデモ では、Storage にアクセスするだけじゃ無かったはず*1なので、もう少し調べてみると Windows Azure Tomcat Solution Accelerator - Home を…

Azure for Java Lab1 テストが全部通った!

やっと全部通った。Azure for Java Lab1 の testBlob_wFile、testBlob_wFile_wMetadata のテストが失敗する原因 - お だ のスペース で testBlob_wFile と testBlob_wFile_wMetadata を同時に実行すると失敗してましたが、これも解決しました! BlobSample.j…

Azure for Java Lab1 の testBlob_wFile、testBlob_wFile_wMetadata のテストが失敗する原因

Windows Azure SDK for Java - Lab 1 Windows Azure Storage using Blob Service を試し中。 - お だ のスペース の続きです。 testBlob_wFile、testBlob_wFile_wMetadata というテストメソッドが失敗する原因が判りました、環境構築ミスです。お騒がせしま…

Azure for Java Lab1 の testContainer_wMetadata のテストが失敗する原因

Windows Azure SDK for Java - Lab 1 Windows Azure Storage using Blob Service を試し中。 - お だ のスペース の続きです。 testContainer_wMetadata というテストメソッドが失敗する原因が判りました、単純なミスの様です。 BlobStorageJUnit.java Line …

Windows Azure SDK for Java - Lab 1 Windows Azure Storage using Blob Service を試し中。

Windows Azure SDK for Java Developers Learn Lab 1 — Windows Azure Storage using Blob Service を試しています。サンプルソースを落として JUnit を実行すると、いきなり幾つかのテストが通らない。。 まだ、コードも全然読んでないんで何が原因かは分か…

Windows Azure SDK for Java を試してみます

Building Java Applications with Windows Azure :: Sessions :: Microsoft PDC10 | October 28 — 29 のセッション資料を見たので試してみます。 参考サイト: 現在環境構築中。。多分 Groovy でも動くんじゃないかなと。

Java の enum ってクラスだったんだ…

Effective Java 第2版 (The Java Series) を読み始めたんですが、その中で enum が取り上げられていました。 enum が Java に追加された事は知ってましたが、中身までは調べておらずどうせ他の言語(C とか C#) と同じだと思ってたのでビックリ! C# の場合、…

Groovy って NaN の比較が Java と違う…

ネタ元: なんぞこれ。NaNってなんなんすか?あのね、非数のことだよ。なんだかナンのカレーが食べたくなるね。ヒ素じゃなくてよかった。 びっくりした事 普段、double.NaN を意識するようなプログラムを書いていないので新鮮でした。そこで、早速 Groovy で…

Groovy の メタクラス でメソッドの処理を差し替えても Java から呼び出したら替ってないのか…

タイトルの通り。あくまでも メタクラス っていう Groovy 側が持っている物に登録しているから、それを利用せずに呼び出す Java からでは変更されないのかな? Groovy イン・アクション の メタプログラミング の章 を読んでみようか。 ちなみに、やりたかっ…

TestNG 例外発生のテストについて

JUnit では面倒な例外発生のテストが簡単に書けるという事で、TestNG を使ってみました。(JUnit は 3 しか使った事ない気がするので、最新版だと簡単に書けるのかな?) TestNG は TestNG - Download Current Release and Beta Versions から 5.10 をダウン…

Azure で Groovy って動くのかな?(挫折)

タイトルの通り Windows Azure で Groovy が動くのか試そうとしました。Azure では、Java が動くらしいのでなら Groovy も動くんじゃね?みたいな軽いノリで。 まず、SDK を入手します。現在の所、.NET Services 用の SDK しか無いようです。(ちなみに、Rub…

Java で "1" == "1" が true になる理由

Java で String(文字列)の比較をする場合、「==」じゃなくて、equals メソッドを使えと言われます。それは、「==」が同一性の比較であって同値性の比較では無いからなんですが、 ここで、下のコードの実行結果ってどうなると思います? System.out.println…

Java の java.util.Arrays.asList について少し調べてみた

調べる機会があったので…Oracle Technology Network for Java Developers | Oracle Technology Network | Oracle asList メソッドから引用 指定された配列に連動する固定サイズのリストを返します。 ここだけ読んで、.NET でいう Enumerable.ToList<TSource> メソッド</tsource>…

JSON (json-lib) で嵌ったこと

今日も少し書きます。 配列は全て List になる? .NET から バイナリデータ(byte)を JSON 文字列化して Java 側で byte のフィールドに変換しようとしたらエラーになった。 (JSON 文字列は、 "content" : [1,0,0,133,〜] こんな感じ) 結局 フィールドを …