ホームページ Java &#&チュートリアル Java クラス ライブラリ - Apache Commons 補足

Java クラス ライブラリ - Apache Commons 補足

Jan 19, 2017 pm 01:10 PM

Apache Commons には、日常のプログラミングでよく遭遇する問題を解決し、作業の重複を減らすために使用されるオープンソース ツールが多数含まれています。簡単に紹介するために、一般的に使用されるプロジェクトをいくつか選択しました。この記事はインターネット上にある既製のものを多く使用しており、要約しただけです。

1. Commons BeanUtils
http://jakarta.apache.org/commons/beanutils/index.html
説明: Bean 用のツールセット。 Bean は get と set の束で構成されることが多いため、BeanUtils はこれに基づいていくつかのパッケージ化も実行します。

使用例: 多くの機能があり、ウェブサイトで詳しく説明されています。より一般的に使用される機能は、Bean のプロパティをコピーする Bean Copy です。 PO (永続オブジェクト) から VO (値オブジェクト) にデータをコピーするなど、階層化されたアーキテクチャを開発している場合に使用されます。

従来の方法は次のとおりです:

//得到TeacherForm
TeacherForm teacherForm=(TeacherForm)form;
//构造Teacher对象
Teacher teacher=new Teacher();
//赋值
teacher.setName(teacherForm.getName());
teacher.setAge(teacherForm.getAge());
teacher.setGender(teacherForm.getGender());
teacher.setMajor(teacherForm.getMajor());
teacher.setDepartment(teacherForm.getDepartment());
//持久化Teacher对象到数据库
HibernateDAO= ;
HibernateDAO.save(teacher);
ログイン後にコピー

BeanUtils を使用した後、コードは以下に示すように大幅に改善されました:

//得到TeacherForm
TeacherForm teacherForm=(TeacherForm)form;
//构造Teacher对象
Teacher teacher=new Teacher();
//赋值
BeanUtils.copyProperties(teacher,teacherForm);
//持久化Teacher对象到数据库
HibernateDAO= ;
HibernateDAO.save(teacher);
ログイン後にコピー

2. Commons CLI
http://jakarta.apache.org/commons /cli/index .html
説明: これはコマンドを処理するためのツールです。たとえば、main メソッドによって入力された string[] は解析する必要があります。パラメータ ルールを事前定義してから、CLI を呼び出してそれらを解析できます。

使用例:

// create Options object
Options options = new Options();
// add t option, option is the command parameter, false indicates that
// this parameter is not required.
options.addOption(“t”, false, “display current time”);
options.addOption("c", true, "country code");
CommandLineParser parser = new PosixParser();
CommandLine cmd = parser.parse( options, args);
if(cmd.hasOption("t")) {
// print the date and time
}else {
// print the date
}
// get c option value
String countryCode = cmd.getOptionValue("c");
if(countryCode == null) {
// print default date
}else {
// print date for country specified by countryCode
}
ログイン後にコピー

3. Commons Codec
http://jakarta.apache.org/commons/codec/index.html
説明: このツールは、Base64、URL、Soundx などのエンコードとデコードに使用されます。もっと。このツールを使っている人はよく知っているはずなので、詳しくは紹介しません。

4. Commons Collections
http://jakarta.apache.org/commons/collections/
説明: このツールは java.util の拡張機能と考えることができます。

使用例: 簡単な例を挙げてください

OrderedMap map = new LinkedMap();
map.put("FIVE", "5");
map.put("SIX", "6");
map.put("SEVEN", "7");
map.firstKey(); // returns "FIVE"
map.nextKey("FIVE"); // returns "SIX"
map.nextKey("SIX"); // returns "SEVEN"
ログイン後にコピー

5. Commons Configuration
http://jakarta.apache.org/commons/configuration/
説明: このツールは、設定ファイルの処理を支援するために使用され、多くのストレージ方法をサポートしています

1. プロパティファイル

3. プロパティリストファイル

4. サーブレットパラメータ


# usergui.properties, definining the GUI,
colors.background = #FFFFFF
colors.foreground = #000080
window.width = 500
window.height = 300
PropertiesConfiguration config = new PropertiesConfiguration("usergui.properties");
config.setProperty("colors.background", "#000000);
config.save();
config.save("usergui.backup.properties);//save a copy
Integer integer = config.getInteger("window.width");
Commons DBCP
ログイン後にコピー

http://jakarta.apache.org/commons/dbcp/
説明: データベース接続プール、Tomcat はこれを使用します。私が使用する必要はありません。これを使用したい場合は、Web サイトにアクセスして説明を読んでください。 。

6. Commons DbUtils
http://jakarta.apache.org/commons/dbutils/
注: 以前データベース プログラムを作成していたとき、データベース操作用に別のパッケージを作成することがよくありました。 DbUtils はそのようなツールなので、今後の開発でこの種の作業を繰り返す必要はありません。このツールは一般的な OR マッピング ツール (Hibernate など) ではなく、


QueryRunner run = new QueryRunner(dataSource);
// Execute the query and get the results back from the handler
Object[] result = (Object[]) run.query("SELECT * FROM Person WHERE name=?", "John Doe");
ログイン後にコピー

などのデータベース操作を簡素化するだけであることに注意してください。 7. Commons FileUpload
http://jakarta.apache.org/commons /fileupload /

説明: JSP ファイルのアップロード機能を使用するにはどうすればよいですか?


使用例:


// Create a factory for disk-based file items
FileItemFactory factory = new DiskFileItemFactory();
// Create a new file upload handler
ServletFileUpload upload = new ServletFileUpload(factory);
// Parse the request
List /* FileItem */ items = upload.parseRequest(request);
// Process the uploaded items
Iterator iter = items.iterator();
while (iter.hasNext()) {
FileItem item = (FileItem) iter.next();
if (item.isFormField()) {
processFormField(item);
} else {
processUploadedFile(item);
}
}
ログイン後にコピー

8. Commons HttpClient
http://jakarta.apache.org/commons/httpclient/
説明: このツールは、プログラミングを通じて Web サイトへのアクセスを容易にします。

使用例: 最も単純な Get オペレーション


GetMethod get = new GetMethod("http://jakarta.apache.org");
// execute method and handle any error responses.
...
InputStream in = get.getResponseBodyAsStream();
// Process the data from the input stream.
get.releaseConnection();
ログイン後にコピー

9. Commons IO
http://jakarta.apache.org/commons/io/
説明: java.io I の拡張とみなすことができます。使えると思います。 立ち上がるのにとても便利です。

使用例:

1.ストリームを読み取ります

標準コード:

InputStream in = new URL( "http://jakarta.apache.org" ).openStream();
try {
InputStreamReader inR = new InputStreamReader( in );
BufferedReader buf = new BufferedReader( inR );
String line;
while ( ( line = buf.readLine() ) != null ) {
System.out.println( line );
}
} finally {
in.close();
}
ログイン後にコピー

IOUtilsを使用します


InputStream in = new URL( "http://jakarta.apache.org" ).openStream();
try {
System.out.println( IOUtils.toString( in ) );
} finally {
IOUtils.closeQuietly(in);
}
ログイン後にコピー

2。ファイルを読む


File file = new File("/commons/io/project.properties");
List lines = FileUtils.readLines(file, "UTF-8");
ログイン後にコピー

3.残りのスペースを確認してください

long freeSpace = FileSystemUtils.freeSpace("C:/");
ログイン後にコピー

10. Commons JXPath
http://jakarta.apache.org/commons/jxpath/
説明: Xpath をご存知であれば、JXpath は Java オブジェクトに基づく Xpath です。つまり、Xpath を使用してクエリする Java オブジェクト。このことはまだ非常に想像力豊かです。

使用例:

Address address = (Address)JXPathContext.newContext(vendor).
getValue("locations[address/zipCode='90210']/address");
上述代码等同于
Address address = null;
Collection locations = vendor.getLocations();
Iterator it = locations.iterator();
while (it.hasNext()){
Location location = (Location)it.next();
String zipCode = location.getAddress().getZipCode();
if (zipCode.equals("90210")){
address = location.getAddress();
break;
}
}
ログイン後にコピー

イレブン、Commons Lang
http://jakarta.apache.org/commons/lang/
説明: このツールキットは java.lang の拡張機能と見なされます。 StringUtils、StringEscapeUtils、RandomStringUtils、Tokenizer、WordUtils などのツール クラスを提供します。

12、Commons Logging
http://jakarta.apache.org/commons/logging/
説明: Log4j をご存知ですか?

13. Commons Math
http://jakarta.apache.org/commons/math/
説明: 名前を見れば、このパッケージが何に使用されるかがわかるはずです。このパッケージで提供される関数は Commons Lang と多少重複していますが、このパッケージは数学ツールの作成により重点を置いており、より強力な関数を備えています。

Fourteen、Commons Net
http://jakarta.apache.org/commons/net/
説明: このパッケージは依然として非常に実用的であり、多くのネットワーク プロトコルをカプセル化しています。

2. NNTP

4. TFTP

8. d/rログイン

10. 時刻(rdate)と昼間

11. エコー

13. NTP/SNTP

の使用例:

TelnetClient telnet = new TelnetClient();
telnet.connect( "192.168.1.99", 23 );
InputStream in = telnet.getInputStream();
PrintStream out = new PrintStream( telnet.getOutputStream() );
...
telnet.close();
ログイン後にコピー

十五、Commons Validator
http://jakarta.apache.org/commons/validator/
说明:用来帮助进行验证的工具。比如验证Email字符串,日期字符串等是否合法。

使用示例:

// Get the Date validator
DateValidator validator = DateValidator.getInstance();
// Validate/Convert the date
Date fooDate = validator.validate(fooString, "dd/MM/yyyy");
if (fooDate == null) {
// error...not a valid date
return;
}
ログイン後にコピー

十六、Commons Virtual File System
http://jakarta.apache.org/commons/vfs/
说明:提供对各种资源的访问接口。支持的资源类型包括

1. CIFS

2. FTP

3. Local Files

4. HTTP and HTTPS

5. SFTP

6. Temporary Files

7. WebDAV

8. Zip, Jar and Tar (uncompressed, tgz or tbz2)

9. gzip and bzip2

10. res

11. ram

这个包的功能很强大,极大的简化了程序对资源的访问。

使用示例:

从jar中读取文件

// Locate the Jar file
FileSystemManager fsManager = VFS.getManager();
FileObject jarFile = fsManager.resolveFile( "jar:lib/aJarFile.jar" );
// List the children of the Jar file
FileObject[] children = jarFile.getChildren();
System.out.println( "Children of " + jarFile.getName().getURI() );
for ( int i = 0; i < children.length; i++ ){
System.out.println( children[ i ].getName().getBaseName() );
}
ログイン後にコピー

从smb读取文件

StaticUserAuthenticator auth = new StaticUserAuthenticator("username", "password", null);
FileSystemOptions opts = new FileSystemOptions();
DefaultFileSystemConfigBuilder.getInstance().setUserAuthenticator(opts, auth);
FileObject fo = VFS.getManager().resolveFile("smb://host/anyshare/dir", opts);
ログイン後にコピー

以上就是java-类库-Apache Commons补充的内容,更多相关内容请关注PHP中文网(www.php.cn)!


このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

H5プロジェクトの実行方法 H5プロジェクトの実行方法 Apr 06, 2025 pm 12:21 PM

H5プロジェクトを実行するには、次の手順が必要です。Webサーバー、node.js、開発ツールなどの必要なツールのインストール。開発環境の構築、プロジェクトフォルダーの作成、プロジェクトの初期化、コードの書き込み。開発サーバーを起動し、コマンドラインを使用してコマンドを実行します。ブラウザでプロジェクトをプレビューし、開発サーバーURLを入力します。プロジェクトの公開、コードの最適化、プロジェクトの展開、Webサーバーの構成のセットアップ。

XMLでPDFをエクスポートする方法 XMLでPDFをエクスポートする方法 Apr 03, 2025 am 06:45 AM

XMLをPDFにエクスポートするには、XSLTを使用し、XMLデータバインディングライブラリを使用する方法は2つあります。 XSLT:XSLT StyleSheetを作成し、XSLTプロセッサを使用してXMLデータを変換するPDF形式を指定します。 XMLデータバインディングライブラリ:XMLデータバインディングライブラリのインポートPDFドキュメントオブジェクトの作成XMLデータエクスポートPDFファイル。 PDFファイルに適している方法は、要件に依存します。 XSLTは柔軟性を提供しますが、データバインディングライブラリは簡単に実装できます。単純な変換のために、データバインディングライブラリの方が優れており、複雑な変換の場合、XSLTがより適しています。

Debian Hadoopの互換性はどうですか Debian Hadoopの互換性はどうですか Apr 02, 2025 am 08:42 AM

DebianLinuxは、その安定性とセキュリティで知られており、サーバー、開発、デスクトップ環境で広く使用されています。現在、DebianとHadoopとの直接的な互換性に関する公式の指示が不足していますが、この記事では、DebianシステムにHadoopを展開する方法について説明します。 Debianシステムの要件:Hadoop構成を開始する前に、DebianシステムがHadoopの最小動作要件を満たしていることを確認してください。これには、必要なJavaランタイム環境(JRE)とHadoopパッケージのインストールが含まれます。 Hadoop展開手順:Hadoopをダウンロードして解凍:公式ApachehadoopのWebサイトから必要なHadoopバージョンをダウンロードして解決します

Apacheのトラブルシューティング:一般的なエラーの診断と解決 Apacheのトラブルシューティング:一般的なエラーの診断と解決 Apr 03, 2025 am 12:07 AM

Apacheエラーは、ログファイルを表示することで診断および解決できます。 1)error.logファイルを表示する、2)GREPコマンドを使用して特定のドメイン名でエラーをフィルタリングし、3)ログファイルを定期的にクリーニングして構成を最適化し、4)監視ツールを使用してリアルタイムで監視およびアラートします。これらの手順を通じて、Apacheエラーは効果的に診断および解決できます。

Debian文字列は、複数のブラウザと互換性があります Debian文字列は、複数のブラウザと互換性があります Apr 02, 2025 am 08:30 AM

「DebianStrings」は標準的な用語ではなく、その特定の意味はまだ不明です。この記事は、ブラウザの互換性について直接コメントすることはできません。ただし、「DebianStrings」がDebianシステムで実行されているWebアプリケーションを指す場合、そのブラウザの互換性はアプリケーション自体の技術アーキテクチャに依存します。ほとんどの最新のWebアプリケーションは、クロスブラウザーの互換性に取り組んでいます。これは、次のWeb標準と、適切に互換性のあるフロントエンドテクノロジー(HTML、CSS、JavaScriptなど)およびバックエンドテクノロジー(PHP、Python、Node.jsなど)を使用することに依存しています。アプリケーションが複数のブラウザと互換性があることを確認するには、開発者がクロスブラウザーテストを実施し、応答性を使用する必要があることがよくあります

無視できないDebianログの重要な情報は何ですか 無視できないDebianログの重要な情報は何ですか Apr 02, 2025 am 08:12 AM

Debianシステムのログファイルは、システム管理者と開発者が問題を診断し、システムの動作ステータスを監視するための貴重なリソースです。この記事では、無視できない重要なログ情報に焦点を当てます。コアシステムログ(通常/var/log/syslogまたは/var/log/メッセージにあります)これらのログは、システムのコアアクティビティを記録します。ハードウェア障害アラート:ディスクエラー、メモリ問題など、潜在的なハードウェアの問題を迅速に検出します。サービスのステータスの変更:サービスの開始、停止、再起動イベントを記録して、サービスの健康の監視を容易にします。ユーザーログイン/ログアウト履歴:

pom.xmlを生成する方法 pom.xmlを生成する方法 Apr 03, 2025 am 06:00 AM

POM.xmlファイルを生成するには次の方法があります。MavenArchetypeを使用して、特定の種類のプロジェクトのPOM.xmlファイルを自動的に生成する定義済みのプロジェクトテンプレートを提供します。 Maven Helperプラグインを使用して、pom.xmlファイルを生成するコマンドを提供します。プロジェクトのpom.xmlファイルをカスタマイズするには、手動で作成します。

PHP対Python:違いを理解します PHP対Python:違いを理解します Apr 11, 2025 am 12:15 AM

PHP and Python each have their own advantages, and the choice should be based on project requirements. 1.PHPは、シンプルな構文と高い実行効率を備えたWeb開発に適しています。 2。Pythonは、簡潔な構文とリッチライブラリを備えたデータサイエンスと機械学習に適しています。

See all articles