본문 바로가기
728x90
반응형

Back-end/JAVA & Spring135

[Java] MultiparFile 파일 업로드 의 메소드 MultiparFile 인터페이스에서 많이 쓰이는 메소드들 메 소 드 내 용 String getName() 파라미터 이름 String getOriginalFilename() 파일 이름 boolean isEmpty() 파일이 존재하지 않으면 true 반환 long getSize() 파일 크기 byte[] getBytes() throws IOException 파일 데이터 InputStream getInputStream() throws IOException 파일 데이터를 읽어오는 InputStream을 얻어온다 사용이 끝난 후에는 알아서 잘 종료 해줄 것 void transferTo(File file) throws IOException 파일 데이터를 지정한 file로 저장 2021. 5. 28.
[Java] 자바 File 클래스 [북붙따라하기] 사용 예제 ) 코드를 복붙 하여 실행해 보시기 바랍니다. 설명은 예제 안에 주석으로 처리를 하였습니다. 필요한 부분을 고쳐서 사용하시면 되겠습니다. import java.io.File; import java.io.IOException; public class Sample { public static void main(String[] args) { ///////////////// 파일 클래스 예제 와 설명 입니다. try { // 디렉토리 와 파일을 만드는 과정입니다. // 먼저 디렉토리를 만듭니다. // c:/temp에 javatest라는 디렉토리를 만든다. File dir = new File("c:/temp/java/test"); dir.mkdirs(); // 실제로 디렉토리를 만드는 메소드 // 그리.. 2021. 5. 28.
[Java] 파일 입출력 FileOutputStream [북붙따라하기] FileOutputStream : byte단위로 파일을 기록하는 클래스 입니다. 사용 예제 ) 코드를 복붙 하여 실행해 보시기 바랍니다. 설명은 주석과 코드 아랫부분에 있습니다. import java.io.FileInputStream; import java.io.FileOutputStream; public class Sample { public static void main(String[] args) { try { ////////////////// 파일 스트림을 이용한 파일에 내용을 기록하는 예제 입니다. // 기존의 파일이 없으면 만들어지고 있으면 덮어쓰게 되어 기존 파일내용이 지워진다. FileOutputStream fos = new FileOutputStream("c:/temp/java/test/t.. 2021. 5. 28.
[Java] 파일 입출력 FileInputStream FileInputStream : byte단위로 파일을 읽어 오는 클래스 입니다. 사용 예제 ) 코드를 복붙 하여 실행해 보시기 바랍니다. 설명은 주석과 코드 아래부분에 있습니다. import java.io.FileInputStream; public class Sample { public static void main(String[] args) { try { //// 파일 스트림을 이용한 파일의 내용을 읽어오는 예제 입니다. //file open.. FileInputStream fis = new FileInputStream("c:/temp/java/test/test.txt"); //파일의 내용을 byte단위로 읽어옵니다.그래서 //읽어서 저장할 버퍼 byte 배열 설정 byte[] byteBuff = ne.. 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] File.separator로 OS 상관없이 파일 경로 구분하기 운영체제마다 파일 경로 구분자가 다르다. 윈도우는 \ (요즘 윈도우는 /도 인식한다고 한다), 리눅스와 맥은 / 로 말이다. 이런 OS에 따른 경로 차이를 신경 쓰지 않고, 파일 경로를 설정하고자 한다. 이럴 때, java.io 패키지의 File 클래스의 separator 필드를 사용한다. import java.io.File; ... String path = File.separator+"fileName"+File.separator+"sample.jpg"; 위 코드의 path는 /fileName/sample.jpg or \fileName\sample.jpg가 될 것이다. 윈도우의 루트(root)는 윈도우가 설치된 C드라이브로 인식한다. 그래서 /나 \로 시작하는 파일 경로는 root 경로 아래부터 시작한다.. 2021. 5. 26.
Quartz Job Scheduler란? 1.1 Quartz란? Quartz는 Terracotta 라는 회사에 의해 개발된 Job Scheduling 라이브러리입니다. 완전히 자바로 개발되어 어느 자바 프로그램에서도 쉽게 통합해서 개발할 수 있습니다. Quartz는 수십에서 수천 개의 작업도 실행 가능하며 간단한 interval 형식이나 Cron 표현식으로 복잡한 스케줄링도 지원합니다. 예를 들면 매주 금요일 새벽 1시 30분에 매주 실행하는 작업이나 매월 마지막 날에 실행하는 작업도 지정할 수 있습니다. 1.2 장단점 스프링을 개발하면서 Quartz를 Job Scheduler로 자주 사용하는 이유도 있지만, 단점도 존재합니다. 장점 DB 기반으로 스케줄러 간의 Clustering 기능을 제공한다 In-memory Job Scheduler도 제.. 2021. 5. 24.
Spring + Quartz 주기적으로 작업 실행하기 SpringFramework 4.3.4 버전에서 Quartz 2.3.0 라이브러리를 사용해서 주기적으로 작업을 실행하는 방법을 알아보겠습니다. 전체 소스는 하단에 첨부해 두었습니다. 앞에서 계속 사용해오던 소스라 DB 연결, 엑셀 다운로드 등의 소스가 같이 있는데 필요 없는 부분은 주석처리하고 테스트 해보시면 되겠습니다. 1. pom.xml 파일에 quartz 라이브러리의 의존성을 추가합니다. org.quartz-scheduler quartz 2.3.0 org.springframework spring-context-support 4.3.4.RELEASE 2. 주기적으로 실행될 서비스 메소드를 생성합니다. com.tistory.pentode.service.BoardService.java파일에 메소드 인터페.. 2021. 5. 24.
[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.
728x90
반응형