들어가며 웹 상에서 m3u8 형태의 Video 스트림을 mp4 파일 형태로 변환하여 다운로드 하는 방법을 알아보자. 참고로 m3u8 이란 플레이리스트의 경로들과 재생시간을 가진 영상 스트리밍용 파일이다. 방법 'ffmpeg' 라는 서드파티를 사용하면 간단하게 해결할 수 있다. 다운로드하자. 참고로 ffmpeg는 크로스 플랫폼 멀티미디어 프레임워크로 비디오, 오디오 스트리밍 및 변환 등을 지원한다. FFmpeg Converting video and audio has never been so easy. $ ffmpeg -i input.mp4 output.avi News October 5th, 2019, Bright Lights FFmpeg has added a realtime bright flash remo..
들어가며 JavaFX FileChooser를 사용하면서 아래 이미지처럼 특정 확장자를 가진 파일만 보여지게 하고 싶은 경우가 있습니다. 이럴 때 FileChooser에 Extension Fileter를 추가하여 구현하는 방법을 알아보겠습니다. ExtensionFilter FileChooser 클래스 에서는 ExtensionFilter 인스턴스 리스트를 가지고 있고 이 인스턴스를 사용하여 필터를 설정합니다. 아래 두개의 멤버변수를 가지고 있는 FileChooser의 이너 클래스 public static final class ExtensionFilter { //Chooser 화면에 보여질 설명 (예. "Text File(*.txt)") private final String description; //확장자 ..
들어가며 Java Application 개발 시 OS의 환경 변수를 읽어와야 하는 경우가 있습니다. System.getenv() 자바 API에서는 환경 변수를 읽어오는 아래 두 메서드를 제공합니다. System.getenv() 모든 시스템 환경변수에 대한 값을 key, value (Map) 형태로 반환합니다. System.getenv(String name) name에 해당되는 시스템 환경 변수의 값을 반환합니다. 예제 예제를 통해서 확인해보겠습니다. 예제에서는 윈도우 환경 변수를 가지고 테스트 해보겠습니다. 먼저 Windows 환경 변수 설정에서 테스트 환경 변수를 하나 추가해보겠습니다. 제어판 → 시스템 → 시스템 환경 변수 편집 → 환경 변수 TEST_ENV_STRING = "Test" 환경 변수를 ..
들어가며 JavaFX UI Application을 개발하면서 특정 컨트롤을 Hover 했을 때 툴팁 이 전시되도록 구현을 해줘야 할 때가 있습니다. JavaFX를 사용하여 컨트롤에 Tooltip을 설정해주는 방법에 대해서 알아보겠습니다. 구현방법 먼저 Tooltip을 만들어보겠습니다. Tooltip 클래스를 이용하여 만들 수 있습니다. Tooltip tooltip = new Tooltip(); tooltip.setText("This is Tooltip"); 만약 Tooltip의 스타일을 변경해주고 싶다면 Tooltip 클래스를 상속받는 클래스를 만들어 사용할 수 있습니다. public class CustomTooltip extends Tooltip { private String title; public ..
들어가며 Java Application을 개발하게 되면 Application 실행 중에 예상치 못한 Exception이 발생했을 때 예외를 처리해줘야 할 때가 있습니다. 혹시 모를 예외 발생을 대비해서 기본적으로 달아두는 것을 추천합니다. 방법 Thread.setDefaultUncaughtExceptionHandler() setDefaultUncaughtExceptionHandler() 메소드는 이용하면 스레드 클래스 내에서 잡히지 않은 예외에 대해서 정의된 핸들러가 없는 경우 호출되는 기본 핸들러를 지정하는 메소드 입니다. 파라미터로는 예외 발생시 처리 로직을 구현한 Thread.UncaughtExceptionHandler 인터페이스를 넣어줍니다. //Main Thread 에서 UncaughtExcep..
들어가며 JavaFX Application을 개발하면 Application Window 창을 닫았을 때 비즈니스 로직을 중단 시키고 프로그램을 종료시켜줘야 할 때가 있다. 그럴 때 Window Close 이벤트를 감지하는 방법을 공유한다. 해결방법 Stage의 setOnCloseRequest() 메소드를 이용하여 이벤트 감지 기능을 구현할 수 있다. @Override public void start(Stage primaryStage) { //Stage의 Window Closing Event 발생시에 terminate() 메소드 실행 primaryStage.setOnCloseRequest(event -> terminate()); } 관련글 (JavaFX) JavaFX TableView 사용법 ver.2 들..
들어가며 ZonedDateTime을 쓰게 되면 String과 ZonedDateTime 간의 변환해야 하는 경우가 많다. 이럴때 마다 항상 찾아보게 되는데 이번 기회에 정리를 해보고자 한다. 해결방법 String -> ZonedDateTime String 포맷에 맞게 DateTimeFormatter 패턴을 바꿔주자. //datetimeString (예. 2020-11-06.12-30-11) public static ZonedDateTime toZonedDateTime(String datetimeString) { DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd.HH-mm-ss"); return ZonedDateTime.of(Loca..
들어가며 Random한 알파벳 조합을 생성하는 방법을 찾아보다가 간단한 방법을 찾아 공유하고자 한다. 해결방법 Apache Commons Lang3 라이브러리를 통해서 간단하게 적용해볼 수 있다. //길이 4만큼의 랜덤 알파벳 String 생성 String codeString = RandomStringUtils.randomAlphabetic(4); 관련글 [Java] JDB를 사용한 자바 어플리케이션(JAR) 간단한 디버깅 방법 들어가며 간혹 IDE가 없는 환경에서 Java 애플리케이션을 디버깅 해야 할때가 있다. 이때 간단하게 사용할 수 있는 것이 JDK에 포함된 JDB 인데 기초적인 사용법만 알아도 유용하게 써먹을 수 있다. jinseongsoft.tistory.com [Java] 스트림 슬라이싱 방..
- Total
- Today
- Yesterday
- 일본여행
- Java UI
- 자전거
- 자바
- 텐트
- 인텔리제이
- 이펙티브
- 스프링부트
- effective java
- windows
- JavaFX
- java
- 배낭여행
- springboot
- 이펙티브 자바
- intelij
- 배낭 여행
- 일본 배낭여행
- 방통대 과제물
- JavaFX 테이블뷰
- effectivejava
- git
- JavaFX Window Close
- JavaFX Table View
- 일본 여행
- TableView
- 일본 자전거 여행
- 자전거 여행
- 이펙티브자바
- JavaFX 종료
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |