Java クラス ライブラリ - Apache Commons 補足
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)!

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック









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

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

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

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

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

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

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

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