Java java지도 시간 java-class 라이브러리-Apache Commons 보충 자료

java-class 라이브러리-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/
설명: 이 도구는 구성 파일을 처리하는 데 사용되며 다양한 저장 방법을 지원합니다

2. XML 문서

3. )

4. JDBC 데이터소스

6. 애플릿 매개변수

8 .

사용예: 간단한 속성 예시


# 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이 사용하는 것입니다. 더 말할 필요가 없습니다. 사용하려면 웹 사이트에 가서 지침을 읽으십시오.

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/
설명: 이 도구 프로그래밍을 통해 홈페이지에 접속하는 것이 편리합니다.

사용 예: 가장 간단한 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의 확장이라고 볼 수 있는데, 사용하기 매우 편리하다고 생각합니다.

사용예:

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. 파일 읽기


으으으으
3. 남은 공간 확인


File file = new File("/commons/io/project.properties");
List lines = FileUtils.readLines(file, "UTF-8");
로그인 후 복사

10. Commons JXPath

http://jakarta.apache.org/commons/jxpath/

설명: Xpath를 알고 있다면 JXpath는 Java 객체 기반 Xpath, 즉 Xpath를 사용하여 Java 객체를 쿼리합니다. 이 일은 여전히 ​​매우 상상력이 풍부합니다.

사용 예:


long freeSpace = FileSystemUtils.freeSpace("C:/");
로그인 후 복사

11. Commons Lang
http://jakarta.apache.org/commons/lang/
지침: This The 툴킷은 java.lang의 확장으로 볼 수 있습니다. StringUtils, StringEscapeUtils, RandomStringUtils, Tokenizer, WordUtils 등과 같은 도구 클래스를 제공합니다.

12. 커먼즈 로깅

http://jakarta.apache.org/commons/logging/

설명: Log4j를 아시나요?

13. Commons Math
http://jakarta.apache.org/commons/math/
설명: 이름을 보면 이 패키지의 용도를 알 수 있습니다. 이 패키지에서 제공하는 기능은 Commons Lang과 다소 중복되지만 이 패키지는 수학적 도구를 만드는 데 더 중점을 두고 있으며 더 강력한 기능을 가지고 있습니다.

14. Commons Net
http://jakarta.apache.org/commons/net/
참고: 이 패키지는 여전히 매우 실용적이며 많은 네트워크 프로토콜을 캡슐화합니다.

1. FTP

2. NNTP

4. POP3

6. TFTP

7. Finger

9. rexec/rcmd/rlogin

10. 🎜>
11. 에코

12. 폐기

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 Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

H5 프로젝트를 실행하는 방법 H5 프로젝트를 실행하는 방법 Apr 06, 2025 pm 12:21 PM

H5 프로젝트를 실행하려면 다음 단계가 필요합니다. Web Server, Node.js, 개발 도구 등과 같은 필요한 도구 설치. 개발 환경 구축, 프로젝트 폴더 작성, 프로젝트 초기화 및 코드 작성. 개발 서버를 시작하고 명령 줄을 사용하여 명령을 실행하십시오. 브라우저에서 프로젝트를 미리보고 개발 서버 URL을 입력하십시오. 프로젝트 게시, 코드 최적화, 프로젝트 배포 및 웹 서버 구성을 설정하십시오.

데비안 하프 (Debian Hadoop)의 호환성은 어떻습니까? 데비안 하프 (Debian Hadoop)의 호환성은 어떻습니까? Apr 02, 2025 am 08:42 AM

Debianlinux는 안정성과 보안으로 유명하며 서버, 개발 및 데스크탑 환경에서 널리 사용됩니다. 현재 Debian 및 Hadoop과 직접 호환성에 대한 공식 지침이 부족하지만이 기사에서는 Debian 시스템에 Hadoop를 배포하는 방법을 안내합니다. 데비안 시스템 요구 사항 : Hadoop 구성을 시작하기 전에 Debian 시스템이 Hadoop의 최소 작동 요구 사항을 충족하는지 확인하십시오. 여기에는 필요한 JAVA 런타임 환경 (JRE) 및 Hadoop 패키지 설치가 포함됩니다. Hadoop 배포 단계 : 다운로드 및 unzip hadoop : 공식 Apachehadoop 웹 사이트에서 필요한 Hadoop 버전을 다운로드하여 해결하십시오.

XML로 PDF를 내보내는 방법 XML로 PDF를 내보내는 방법 Apr 03, 2025 am 06:45 AM

XML을 PDF로 내보내는 두 가지 방법이 있습니다 : XSLT 사용 및 XML 데이터 바인딩 라이브러리 사용. XSLT : XSLT 스타일 시트를 만들고 XSLT 프로세서를 사용하여 XML 데이터를 변환 할 PDF 형식을 지정하십시오. XML 데이터 바인딩 라이브러리 : XML 데이터 바인딩 라이브러리 가져 오기 PDF 문서 객체로드 XML 데이터 내보내기 PDF 파일을 만듭니다. PDF 파일에 더 나은 방법은 요구 사항에 따라 다릅니다. XSLT는 유연성을 제공하지만 데이터 바인딩 라이브러리는 구현하기가 간단합니다. 간단한 변환의 경우 데이터 바인딩 라이브러리가 더 좋으며 복잡한 변환의 경우 XSLT가 더 적합합니다.

데비안 문자열은 여러 브라우저와 호환됩니다 데비안 문자열은 여러 브라우저와 호환됩니다 Apr 02, 2025 am 08:30 AM

"Debiantrings"는 표준 용어가 아니며 구체적인 의미는 여전히 불분명합니다. 이 기사는 브라우저 호환성에 직접 언급 할 수 없습니다. 그러나 "Debiantrings"가 Debian 시스템에서 실행되는 웹 응용 프로그램을 지칭하는 경우 브라우저 호환성은 응용 프로그램 자체의 기술 아키텍처에 따라 다릅니다. 대부분의 최신 웹 응용 프로그램은 크로스 브라우저 호환성에 전념합니다. 이는 웹 표준에 따라 웹 표준과 잘 호환 가능한 프론트 엔드 기술 (예 : HTML, CSS, JavaScript) 및 백엔드 기술 (PHP, Python, Node.js 등)을 사용하는 데 의존합니다. 응용 프로그램이 여러 브라우저와 호환되도록 개발자는 종종 브라우저 크로스 테스트를 수행하고 응답 성을 사용해야합니다.

아파치 문제 해결 : 일반적인 오류 진단 및 해결 아파치 문제 해결 : 일반적인 오류 진단 및 해결 Apr 03, 2025 am 12:07 AM

로그 파일을 보면 Apache 오류를 진단하고 해결할 수 있습니다. 1) Error.log 파일보기, 2) Grep 명령을 사용하여 특정 도메인 이름에서 오류를 필터링하고 3) 로그 파일을 정기적으로 정리하고 구성을 최적화하십시오. 4) 모니터링 도구를 사용하여 실시간으로 모니터링하고 경고합니다. 이러한 단계를 통해 Apache 오류를 효과적으로 진단하고 해결할 수 있습니다.

무시할 수없는 데비안 로그의 주요 정보는 무엇입니까? 무시할 수없는 데비안 로그의 주요 정보는 무엇입니까? Apr 02, 2025 am 08:12 AM

데비안 시스템의 로그 파일은 시스템 관리자와 개발자가 문제를 진단하고 시스템의 작동 상태를 모니터링 할 수있는 귀중한 리소스입니다. 이 기사는 무시할 수없는 몇 가지 주요 로그 정보에 중점을 둘 것입니다. 코어 시스템 로그 (일반적으로/var/log/syslog 또는/var/log/message에 위치)이 로그는 시스템 시작 및 종료 이벤트 : 로그 커널 버전, 하드웨어 감지 결과 등을 포함하여 시스템의 핵심 활동을 기록하여 시작 실패 또는 종료 예외를 추적하는 데 도움이됩니다. 하드웨어 실패 경고 : 디스크 오류, 메모리 문제 등과 같은 잠재적 하드웨어 문제를 즉시 감지합니다. 서비스 상태 변경 : 서비스 시작을 기록하고, 이벤트를 중지 및 다시 시작하여 서비스의 건강 모니터링을 용이하게합니다. 사용자 로그인/로그 아웃 기록 :

데비안 메시지로 시스템 성능을 최적화하는 방법 데비안 메시지로 시스템 성능을 최적화하는 방법 Apr 02, 2025 am 08:09 AM

데비안 시스템은 안정성과 보안으로 유명하지만 성능 최적화에는 여전히주의가 필요합니다. 이 기사는 일반적으로 사용되는 데비안 시스템 성능 최적화 방법을 소개합니다. 최적화를 위해 "Debianmessage"(시스템 로그 참조)를 직접 사용하지는 않지만 시스템 리소스를 모니터링하고 조정하여 효율성을 향상시킵니다. 성능 모니터링 도구 다음 도구를 사용하면 시스템 리소스 사용을 실시간으로 모니터링하는 데 도움이 될 수 있습니다. 상단 : CPU 및 메모리 사용을 포함하여 프로세스 정보를 실시간으로 표시합니다. HTOP : (사용 가능한 경우) 대화식 프로세스 뷰어, 상단보다 직관적입니다. VMSTAT : 가상 메모리, 디스크, CPU 및 프로세스 활동 정보를 표시합니다. Iostat : 읽기 및 쓰기 속도와 같은 디스크 I/O 통계 표시

pom.xml을 생성하는 방법 pom.xml을 생성하는 방법 Apr 03, 2025 am 06:00 AM

pom.xml 파일을 생성하는 다음과 같은 방법이 있습니다. Maven Archetype를 사용하여 사전 정의 된 프로젝트 템플릿을 제공하여 특정 유형의 프로젝트에 대해 POM.XML 파일을 자동으로 생성하십시오. Maven 헬퍼 플러그인을 사용하여 pom.xml 파일을 생성하기위한 명령을 제공하십시오. 프로젝트의 pom.xml 파일을 사용자 정의하려면 수동으로 만듭니다.

See all articles