2009-05-01から1ヶ月間の記事一覧

Eclipseの小技

・sysoと入力して、Ctrl+Space→System.out.println("");と変換される。これは便利

FilenameUtilsのサンプル

コードFile file = new File("C:\\sample\\test\\文章.txt"); 1:file.getPath()); 2:FilenameUtils.getBaseName(file.getPath())); 3:FilenameUtils.getName(file.getPath())); 4:FilenameUtils.getPath(file.getPath())); 5:FilenameUtils.getPathNoEndSepa…

Eclipseのショートカットメモ

・不要import文の一括削除 ∟ Ctrl + Shift + O ・リソースを開く(Javaに限らず、何でも開く) ∟ Ctrl + Shift + R ・フォーマットを実行 ∟ Ctrl + Shift + F

rsync

Linuxの同期化ツールhttp://www.reudo.co.jp/rsync/download.html

iモードブラウザ2.0の仕様

http://www.nttdocomo.co.jp/service/imode/make/content/browser/browser2/

自動で挿入される日付やIDを無効化するには

作成日付、更新日付など自動で挿入する設定になっている場合で、ピンポイントで設定を無効化するにはエンティティに用意されている下記のメソッドを 実行の上レコードの更新を行う。 entity.disableCommonColumnAutoSetup(); これで任意の日付などを入れたい…

S2junit4とは

@testの付いているメソッドスコープでロールバックする。 メソッド名の最後に_Txをつけると、終了後にロールバックする。 (つけなくても基本ロールバックする)ロールバックしたくない場合は、アノテーションで制御する。http://s2container.seasar.org/2.4…

複数のリクエストを投げるには

・Apache Benchhttp://www.atmarkit.co.jp/flinux/rensai/apache15/apache15b.html

S2CSVとは

CSVを便利に使うためのライブラリ http://s2csv.sandbox.seasar.org/index.html 出来ること ・アノテーション使った必須チェックやサイズ、型のチェックができる(SAStruts同様) ・日付を文字列フォーマットにしたがって変換可能 Timestampの値をつっこんでや…

GlassFishはデフォルトの設定ではダメダメである。

http://ponytailthes.blogspot.com/2009/01/glassfish.html

フィールドの値に絶対にExceptionが上がらないものだけ設定する。

アプリケーションプロパティなどは書き漏らしなどの ヒューマンエラーが発生する可能性があるのでフィールドとして指定しない。getter経由で動的に取得するようにする。

システムのテンポラリディレクトリを利用するには

System.getProperty("java.io.tmpdir")でテンポラリディレクトリのパスが取得出来る。

war(もしくはjarなど)を作成するには

mvn package ディペンデンシーを解決し、warを作成してくれる。プロジェクトのルートディレクトリ/target/hoge/WEB-INF/lib/ に依存関係にあるjarを全て集めてくれるので 他のjarが正しく更新されているかはここに集まるjarの日付やサイズで分かる

リポジトリにデプロイするには

プロジェクトのルートディレクトリ内でmvn deploy -Dmaven.test.skip=trueと実行するとビルドし、 出来上がったjarをリポジトリにデプロイしてくれる。他のプロジェクトを参照していてディペンデンシーが張られている場合は みんな引き連れてデプロイしてく…

GlassFishのコマンド

http://d.hatena.ne.jp/asaism/20090126

GlasFishの管理単位

商用アプリサーバはドメインという単位で仮想サーバを作り、その世界の中でやり取りするサーバ(物理的な1台) ∟GlassFish ∟domain1 | ∟ウェブアプリ1 | ∟ウェブアプリ2 | ∟domain2 ∟ウェブアプリ3 ∟ウェブアプリ4

バイナリをダウンロードする際には

Content-Lengthは自分で計算してちゃんと入れましょう! Long fileSize = new Long(appFile.length()); response.setHeader("Content-length", fileSize.toString());

ログを表示するには

スタンドアロンインスタンス ∟server(Admin server) ∟一般 ∟ログファイル表示 ただし、リストと表示の内容が違う?

ValuedEnum

ValuedEnum

SAStrutsでのActionのプロパティの型について

httpからもらうプロパティは基本的にStringで受け取る。 そうしないとクラスの型が合わずにNumberFormatExceptionなどが発生してしまう。 以下のような流れで処理が走っているらしい。 (strutsの常識?) 1.アクセスされる。http://***.co.jp/hoge/exec/param…

チェックアウトしているユーザを特定するには

EA

パッケージのコントロール→ファイルのプロパティ→Lock Owner

シーケンスの現在値(最終値)を変更するには

DB

SELECT setval('シーケンス名', 53, true );

複数のプロジェクトで依存とバージョンをうまく管理するには

root ∟pom.xml ∟root ∟commons-io(ver1.0) ∟httpclient(ver2.0) Aプロジェクト ∟pom.xml ∟root ∟commons-io Bプロジェクト ∟pom.xml ∟root ∟httpclient こうすることでrootでアプリ全体での依存を管理しつつ、 varsionも一元管理できる。

先頭の一行だけ取得するには

cb.query().addOrderBy_LoginDate_Desc(); cb.fetchFirst(1);条件当てはまるものが無い場合nullが返るので注意する

メソッドをインポートして使うには

import static org.junit.Assert.*;シンタックスシュガー継承しなくてもメソッドをインポートして使える

開発時のみ必要なjarにdependencyを張るには

例えばGUIナシのActionクラスをテストする際に、 httpclientが必要だけどサーバ側のプログラムでは必要ない場合、pom.xml以下のように書く。 org.apache.httpcomponents httpclient test ↓のように記述するとビルドには含まれないようになるtest