본문 바로가기
728x90
반응형

Java46

[Java] 자바 zip 압축 풀기 ( 파일 , 폴더 압축 풀기) # 자바로 zip 파일 압축 풀기. - 폴더 안에 파일과, 하위 폴더 압축해버리기. - 아래의 ZIP 파일 압축 풀기. # UnZip.java - ZIP 파일 압축 풀기 package zipUtil; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.nio.charset.Charset; import java.util.zip.ZipEntry; import java.util.zip.ZipInputStream; public class UnZip { /** * 압축풀기 메소드 * * @param zipFileName 압축파일 * @para.. 2021. 5. 28.
[Java] java.io.FileInputStream 주요 메소드 [ FileInputstream ] java.io의 가장 기본 파일 입출력 클래스 입력 스트림(통로)을 생성해줌 사용법은 간단하지만, 버퍼를 사용하지 않기 때문에 느림 속도 문제를 해결하기 위해 버퍼를 사용하는 다른 클래스와 같이 쓰는 경우가 많음 외부 리소스 입출력에 대한 개념과 설명은 아래 링크글을 참조하시면 됩니다. 2019/12/16 - [JAVA/기본 문법] - 외부 데이터 입출력_io / nio / nio2 [1/3] 2019/12/16 - [JAVA/기본 문법] - 외부 데이터 입출력_java.io [2/3] 2019/12/16 - [JAVA/기본 문법] - 외부 데이터 입출력_java.nio [3/3] [ 생성자 ] new FileInputStream(File file) new FileIn.. 2021. 5. 26.
[JAVA] Quartz job Scheduler 기본 사용법 정리 라이브러리 다운로드 http://www.quartz-scheduler.org/downloads/ 일정 시간, 주기적으로 작동되는 배치 프로그램을 만들때 사용하는 라이브러리, 회사에서 서로 다른 DB의 데이터를 마이그레이션 하거나 주기별로 DB데이터를 동기화 시키는 데몬을 만들게 되어 사용방법을 정리한다. 1. 구성 요소 JobDetail : 스케줄러에서 수행할 작업을 담을 JOB을 생성, Job을 상속하는 클래스를 JobBuilder.newJob()을 이용하여 전달 해야 한다. JobDataMap : 스케줄러에서 JOB이 실행될떄 사용할 변수 값을 전달하는데 사용한다. key-value 형식으로 값을 전달하고 JOB을 수행할떄 값을 꺼낼수 있다. Trigger : 스케줄러를 어떤 방식으로, 어떤 주기로 .. 2021. 5. 24.
[Java] 버퍼(BUFFER)란? 버퍼 개념 버퍼(Buffer)란 버퍼란 임시 저장 공간을 의미 합니다. 임시 저장 공간이라고 해서 쌩뚱맞게 보일 수 있지만 정확히 말하면 A와 B가 서로 입출력을 수행하는데에 있어서 속도차이를 극복하기 위해 사용하는 임시 저장 공간을 의미 합니다. 동영상 스트리밍 서비스에서의 버퍼 이 버퍼라는 개념은 굉장히 다양하게 사용되는데 가장 쉽게 접할 수 있는 곳은 유튜브같은 동영상 스트리밍 사이트입니다. 스트리밍 사이트에서 실시간으로 동영상을 보게 되면 보통 동영상이 진행되는 부분(빨간색)과 서버로부터 동영상을 내려받은 부분(밝은 회색) 그리고 앞으로 다운로드가 남은 부분을 본 적이 있을 것 입니다. 여기서 저 밝은 회색부분이 버퍼라고 볼 수 있습니다. 동영상 데이터가 내려 받아지는 속도에 비해 우리가 동영상을 1초씩 진.. 2021. 5. 17.
[Java] BufferedReader의 EOF 처리 & 여러 줄 입력 처리 - .readLine() BufferedReader.readLine() 패키지 메서드 설명 BufferedReader readLine() - text를 줄 단위로 읽어들인다. - 만약 stream의 끝에 다다르면 (EOF) null 값을 반환한다. BufferedReader로 여러 줄 입력 받기 import java.io.BufferedReader; import java.io.InputStreamReader; public class Main { public static void main(String[] args) { try { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String str = ""; while((str = br.readLin.. 2021. 5. 17.
[Java] 클래스 ProcessBuilder java.lang.Object ->java.lang.ProcessBuilder 이 클래스는 OS 의 프로세스의 작성에 사용됩니다. 각 ProcessBuilder인스턴스는 프로세스 속성의 컬렉션을 관리합니다. start() 메서드는 이러한 속성을 가지는 새로운 Process 인스턴스를 작성합니다. 같은 인스턴스로부터 start() 메서드를 반복해 호출해, 동일한 속성 또는 관련된 속성을 가지는 새로운 서브 프로세스를 작성할 수 있습니다. 각 프로세스빌더 는 다음의 프로세스 속성을 관리합니다. 「커멘드」. 호출되는 외부 프로그램 파일과 그 인수 (존재하는 경우)를 나타내는 캐릭터 라인의 리스트입니다. 어느 캐릭터 라인 리스트가 유효한 OS 커멘드를 나타낼까는 시스템에 응해 다릅니다. 예를 들어 개념상의 인수.. 2021. 5. 17.
[Java] 메소드의 개념 메소드(method) 자바에서 클래스는 멤버(member)로 속성을 표현하는 필드(field)와 기능을 표현하는 메소드(method)를 가집니다. 그중에서 메소드(method)란 어떠한 특정 작업을 수행하기 위한 명령문의 집합이라 할 수 있습니다. 메소드의 사용 목적 클래스에서 메소드를 작성하여 사용하는 이유는 중복되는 코드의 반복적인 프로그래밍을 피할 수 있기 때문입니다. 또한, 모듈화로 인해 코드의 가독성도 좋아집니다. 그리고 프로그램에 문제가 발생하거나 기능의 변경이 필요할 때도 손쉽게 유지보수를 할 수 있게 됩니다. 메소드를 작성할 때는 되도록 하나의 메소드가 하나의 기능만을 수행하도록 작성하는 것이 좋습니다. 메소드 정의 클래스에서 메소드를 정의하는 방법은 일반 함수를 정의하는 방법과 크게 다르.. 2021. 5. 17.
[JSP] 이메일 라이브러리 java mail + activation 라이브러리 파일 안녕하세요 꼬바리 입니다. 요즘은 jsp를 많이 사용 하지않지만 연습겸 공부겸 회원가입시 이메일 보내는 코드를 공부하였습니다. 오라클 아이디가 있으신 분들도 있지만 저 처럼 가입이 귀찮아 검색 하실 분들을 위해 파일 첨부 하겠습니다. 압축을 푸시고 lib폴더로 copy 하면 됩니다 (많은 분들이 이렇게 사용) 회원가입시 이메일 보내는 코드는 아직 미완성이니 나중에 포스팅 하도록 하겠습니다. (사실 너무 큰 오류가 계속 나서 저는 실패했습니다. 타임아웃 오류 해결하면 다음 오류.. 오류의 연결고리) 2021. 5. 12.
[Java] BufferedReader/BufferedWriter 자바 입출력 [자바 입출력 함수] BufferedReader / BufferWriter BufferedReader/BufferedWriter은 이름처럼 버퍼를 이용해서 읽고 쓰는 함수입니다. 이 함수는 버퍼를 이용하기 때문에 이 함수를 이용하면 입출력의 효율이 비교할 수 없을 정도로 좋아집니다. 한 번 거쳐가므로 느릴거 같은 데 왜 빠르냐고요? 하드디스크는 원래 속도가 엄청 느립니다. 하드뿐만 아니라 키보드나 모니터와 같은 외부 장치와의 데이터 입출력은 생각보다 시간이 걸리는 작업이예요. 버퍼링 없이 키보드가 눌릴 때마다 눌린 문자의 정보를 목적지로 바로 이동시키는 것보다 중간에 메모리 버퍼를 둬서 데이터를 한데 묶어서 이동시키는 것이 보다 효율적이고 빠릅니다. 그냥 전송하게 되면 CPU와 성능 갭이 많이 나서 비효.. 2021. 5. 12.
728x90
반응형