Apache Commons とは、Apacheソフトウェア財団が開発しているオープンソースのJavaライブラリである。

スポンサーリンク

概要

Apache Commonsは次に示すコンポーネントから構成されている。

Apache Commonsのコンポーネント一覧
コンポーネント 説明
Apache Commons BeanUtil JavaのリフレクションとイントロスペクションAPIを使いやすくしたラッパー
Apache Commons CSV CSV(カンマ区切り値)ファイルの読み込みと書き出しを行うためのコンポーネント
Apache Commons Daemon UnixデーモンのようなJavaコードのための代替呼び出しメカニズム
Apache Commons IO I/Oユーティリティのコレクション
Apache Commons Lang java.langを機能拡張したもの
Apache Commons Logging ロギングAPI実装のラッパー
Apache Commons Net ネットワークユーティリティとプロトコル実装のコレクション

Apache Commons BeanUtil

org.apache.commons.beanutils.BeanUtilsクラスのcopyPropertiesメソッドで、Beansから他のBeansへ全てのプロパティをコピーできる。

// nullをjava.sql.Timestampのプロパティへコピーするための設定
ConvertUtils.register(new SqlTimestampConverter(null), java.sql.Timestamp.class);

// プロパティのコピー
BeanUtils.copyProperties(dest, orig);

// SqlTimestampConverterの解除
ConvertUtils.deragister();

Apache Commons CSV

Apache Commons Daemon

Apache Commons Daemonとは、Javaに基づいたデーモンを作成するためのライブラリである。

Apache Commons IO

org.apache.commons.io.FileUtils
org.apache.commons.io.output.ByteArrayOutputStream

org.apache.commons.io.FileUtils

FileUtilsクラスのメソッド
メソッド 説明
copyFile ファイルをコピーする。

copyFile

ファイルをコピーする。

static void copyFile(File srcFile, File destFile)

org.apache.commons.io.output.ByteArrayOutputStream

ByteArrayOutputStreamは、データがバイト配列に書き込まれる出力ストリームである。

コンストラクタ

新しいバイト配列出力ストリームを作成する。

ByteArrayOutputStream
ByteArrayOutputStream(int size)
size
指定したサイズ(バイト単位)の容量をもつバイト配列を作成する。

Apache Commons Lang

org.apache.commons.lang3.StringUtilsクラス

StringUtilsクラスのメソッド
メソッド 説明
isEmpty 文字列がnull又は空(長さ0)か否かを返す
isNotEmpty 文字列がnullでなく、かつ空(長さ0)でないか否かを返す

isEmpty

static boolean isEmpty(java.lang.String)

isNotEmpty

static boolean isNotEmpty(java.lang.String)

Apache Commons Logging

commons-loggingは、ロギングのインタフェース仕様を定義している。この仕様に準拠しているロギングユーティリティであれば、すべて共通のインタフェースでアクセスできる。log4jもcommons-loggingをサポートしている。

Apache Commons Loggingのインタフェース一覧
インタフェース 説明
Log ログ処理のAPIを抽象化したインタフェース
Apache Commons Loggingのクラス一覧
クラス 説明
LogFactory Logいんすたんすを生成するファクトリ

org.apache.commons.logging.LogFactoryクラス

org.apache.commons.logging.LogFactoryクラスのメソッド
戻り値の型 メソッド 説明
static Log getLog(Object clazz ) 指定したオブジェクトのロガーを返す。
static Log getLog(String name ) 指定した名称のロガーを返す。

org.apache.commons.logging.Logインタフェース

org.apache.commons.logging.Logインタフェースのメソッド
メソッド 説明
debug 指定したメッセージをdebugログレベルでログに出力する。
error 指定したメッセージをerrorログレベルでログに出力する。
fatal 指定したメッセージをfatalログレベルでログに出力する。
info 指定したメッセージをinfoログレベルでログに出力する。
isDebugEnabled debugレベルのログ処理が現在有効か否かを返す
isErrornabled errorレベルのログ処理が現在有効か否かを返す
isFatalEnabled fatalレベルのログ処理が現在有効か否かを返す
isInfoEnabled infoレベルのログ処理が現在有効か否かを返す
isTraceEnabled traceレベルのログ処理が現在有効か否かを返す
isWarnEnabled warningレベルのログ処理が現在有効か否かを返す
trace 指定したメッセージをtraceログレベルでログに出力する。
warn 指定したメッセージをwarnログレベルでログに出力する。

debug

debugレベルのログを出力する。

void debug(Object message)
Logger logger = Logger.getLogger(MyApp.class);
logger.debug("Hello world!");

isDebugEnabled

debugレベルのログを出力するかどうかを返す。

boolean isDebugEnabled()
if (log.isDebugEnabled())
{
    log.debug("名前=" + name);
}

Apache Commons Net

FTP

// FTPクライアント
FTPClient client = new FTPClient();

// 接続
client.connect(host, port);
int reply = client.getReplyCode();
if (!FTPReply.isPositiveCompletion(reply)) {
    // 異常な応答コード
}

// ログイン
if (client.login("user", "password") == false) {
    // ログイン失敗
}

// ファイルタイプの設定
client.setFileType(FTP.BINARY_FILE_TYPE);

// ファイルのGET
FileOutputStream fos = new FileOutputStream("localfile");
client.retrieveFile("remotefile", fos);
このエントリーをはてなブックマークに追加
スポンサーリンク