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)!

この記事では、Javaプロジェクト管理、自動化の構築、依存関係の解像度にMavenとGradleを使用して、アプローチと最適化戦略を比較して説明します。

この記事では、MavenやGradleなどのツールを使用して、適切なバージョン化と依存関係管理を使用して、カスタムJavaライブラリ(JARファイル)の作成と使用について説明します。

この記事では、カフェインとグアバキャッシュを使用してJavaでマルチレベルキャッシュを実装してアプリケーションのパフォーマンスを向上させています。セットアップ、統合、パフォーマンスの利点をカバーし、構成と立ち退きポリシー管理Best Pra

この記事では、キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPAを使用することについて説明します。潜在的な落とし穴を強調しながら、パフォーマンスを最適化するためのセットアップ、エンティティマッピング、およびベストプラクティスをカバーしています。[159文字]

Javaのクラスロードには、ブートストラップ、拡張機能、およびアプリケーションクラスローダーを備えた階層システムを使用して、クラスの読み込み、リンク、および初期化が含まれます。親の委任モデルは、コアクラスが最初にロードされ、カスタムクラスのLOAに影響を与えることを保証します


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

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