S_a_k_Uの日記みたいなDB

~サクゥーと呼ばないで~

Java

privateなのはクラス内であってインスタンス内ではない

変数もだけど、もちろんメソッドも同じだし。 言語仕様からすると当然だけど、なんかイヤな感じがするのはなんでだろう??? private=クラス内、protected=パッケージ/継承内、public=公開というスコープ自体の意義を考えてみんといかんのか???

EUCで機種依存文字

EUCでは機種依存文字とか包含することができないと思っていたが、テキストエディタ等でIMEで入力して、文字コードをEUCに指定して保存することができる。

透過したShapeを画像イメージに変換する

「Shapeを透過した画像イメージに変換する」の方が正しいのか??? Shapeを画像イメージに変換するを改造してみた。

antでzip

ant 1.7.0 java 1.5.0_12 antのorg.apache.tools.zip.ZipFileクラスを使って作成したzipファイルを、org.apache.tools.zip.ZipFileクラスで展開すると、 java.io.IOException: Negative seek offset という例外が発生した。

commons-httpclientとSSL

Sun Java 1.5.0_12 commons-httpclient 3.1 James 2.3.1 httpclientにより、既存のアプリケーションからのリクエストを、追加したアプリケーションのServletへ送信するような仕組みを実装した。

ファイルをタイムスタンプ順にソートする

あまりカッコよくなけど、単純にこんなコードで実現してみた。

ResourceBundleによるプロパティファイルでの多言語対応

SunのJava1.5では、java.util.ResourceBundle#getBundleでロケールを指定して、リソースを取得しようとした場合。 もし、言語(と国)が一致するリソースが存在しなければ、デフォルトのロケールを使ってリソースを取得してしまう。

Eclipseでjarファイルを作成する場合のプロパティファイルやXMLファイルの優先順位

Eclipse3.4.0 Eclipseのエクスポート機能を使って、「ソースのリンク」を含むプロジェクトのjarファイルを作成した場合。

log4jでログが出力されるファイルのパスを取得する

log4j 1.2.14 アクセスログ等をファイルに残す場合、 ・ファイルのサイズが大きい ・ファイルの数が多くなる などの対策として、zipでアーカイブするような対応を行う。 その際に、ログが出力されるファイルのパス(FileAppenderの出力先のパス)を取得する。

UnexpectedRollbackExceptionが発生する原因となる例外がthrowされない?catchできない?

本番稼動中の既存システムのテーブルを参照する箇所で発生した。 既存システムは、現時点では並行稼動用の”仮対応”の状態であり、本番稼動後の状態となっていない。 そのため、一部のテーブルのカラムが足りない状況となっており、そのテーブルの参照で発生…

System.exit(int)の戻り値の判定

WindowsのバッチファイルでJavaアプリケーション実行後に、System.exit(int)の戻り値を判定する場合。

スレッドが終了したことを検知して処理を行う

Webアプリであれば、リクエストならfilterで、セッションなら破棄された時に処理を行う。 そのような、ある意味AOPのAfterAdvice的なメカニズムを、バッチ処理などに織り込みたい場合等。

セッションが破棄されるイベントで処理を行う

忘れっぽいエンジニアのJakarta Strutsリファレンス セッション生成/破棄イベント処理:HttpSessionListener HttpSessionListener#sessionDestroyedメソッドでは、セッションを引数のHttpSessionEventオブジェクトからgetSessionメソッドで取得することがで…

Serializableインターフェース

serialVersionUIDのことは意識していたが、スーパークラスに引数なしのコンストラクタが必要になる場合がある。

委譲のメカニズム

SmalltalkとかRubyとかにある委譲のメカニズム?概念?を、id:katzchangさんがJavaで実現して下さったので。 まだコードを読みきれてませんが、応用できる場面は多そうです。 Rubyでの「オブジェクト」「クラス」「メッセージ」の関係についてMatzから話を聞…

commons-fileuploadでファイルサイズの上限を超えた場合の処理

commons-fileupload-1.2 内部では、ファイルサイズの上限を超えたことを検知しているが、それを外部に通知する仕組みがない。

commons-netのFTPで日本語のディレクトリ名を取り扱う

commons-net-1.4.1 org.apache.commons.net.ftp.FTPClientクラスを使用して、FTPコマンドを実行する場合。 cwdメソッドにて、カレントディレクトリを日本語(マルチバイト?)のディレクトリに変更すると、レスポンスコード550が返ってくる。 setControlEnco…

System#runFinalizersOnExitメソッドが非推奨な理由

APIに書いている、”終了時”とは”スレッドの終了時”という意味なのか? ”JavaVMの終了時”であれば問題ないような気がするが…

java.lang.ref.Referenceの動きとキャッシュ

Java1.6.0_07 SoftReferenceとWeakReferenceの違いを調べてみる。 iBATISのキャッシュのreference-typeをどう設定しようかな?とした時に、SOFTとWEAKの動作を確認しときかったので。

クラスの依存関係が知りたい

この方と同じことがしたい訳です。 @IT会議室 > 依存クラスの抽出について

ダミーのOutputStream

printパッケージを強引に使いたい場面があってw でも実際には出力したくないのよね。 って時は、Jakarta Commons IOのこんなクラス群を使えばいいっぽい。 org.apache.commons.io.input.NullInputStream org.apache.commons.io.input.NullReader org.apache…

継承している全てのスーパークラスと実装している全てのインターフェースを取得する

java.lang.ClassのgetSuperclassとかgetInterfacesは、Declaredなメソッドみたいなので。

継承元のクラスのgetDeclaredMethodで取得したPrivateメソッドは?

やっぱり滑りに行った帰りに、ふと思ってみたので確認。

インターフェースでも確認

継承元のクラスで取得したメソッドが動くってことは、インターフェースでも動くよな?とか。

継承されたprotecedなAccessibleObject(Filed, Method, Constructor)が取得できない、の回避策

昨日のやりたかったことの回避策。 継承元のクラスオブジェクトからgetDeclared*メソッドで取得すりゃえんじゃねん?とか。 ボードからの帰り道で思う浮かんだんで。

継承されたprotecedなAccessibleObject(Filed, Method, Constructor)が取得できない

java.lang.Class#getDeclared*は、そのクラスで実装されたAccessibleObjectしか取得できん。 java.lang.Class#get*は、継承されたAccessibleObjectが取得できるけど、publicなAccessibleObjectしか取得できんし。 ということで「呼ばれたメソッド名から、命…

Shapeを画像イメージに変換する、のワナ

直径10[px?]の円を書いたけど、Javaの1.5.0_12と1.6.0_7で出力される画像が違うじゃない!

Shapeを画像イメージに変換する

Shapeを画像ファイルにしたいのです。

serialVersionUIDの重複チェック

みんなね。 クラスをコピーしてもね。 serialVersionUIDを生成してくれないんだよ。 別に要件で必要じゃないんだけど、念のため全てのクラスにSerializable付けてるんだけなんだけどね。 コメントもちゃんと書いて?変えて?くれんし(涙 ということで、seri…

privateなメソッド/フィールドにアクセスする

java.lang.reflect.AccessibleObjectクラスのサブクラス(Constructor, Field, Methodとか)では、setAccessible(true)するとアクセスできるのね。