[Java] 자바의 리플렉션 (Reflection) 이란?
·
JAVA
리플렉션 (Reflection) 리플렉션은 힙 영역에 로드된 Class 타입의 객체를 통해 구체적인 클래스 타입을 알지 못하더라도 그 클래스의 메서드, 타입, 변수들 즉 인스턴스를 접근할 수 있도록 해주는 자바 API를 말한다. 컴파일 시간이 아닌 실행 시간에 동적으로 특정 클래스의 정보를 추출할 수 있는 프로그래밍 기법이다. 언제 사용할까? 작성 시점에서는 어떠한 클래스를 사용해야 할지 모르지만 런타임 시점에서 가져와 실행해야 하는 경우 즉, 동적으로 클래스를 사용해야 할 때 이용한다. IDE나 프레임워크에서 이런 동적 바인딩을 이용한 기능을 제공한다. 예를 들어 자동완성 기능이나 스프링어노테이션 같은 것들을 말한다. 리플렉션 정보사용 리플렉션을 사용하기 위해서는 java.lang.reflect 패키지..
Java 의 Robot 클래스란?
·
JAVA
Robot 클래스란 자바의 java.awt.Robot 클래스는 컴퓨터의 마우스 및 키보드 조작을 자동화하는 데 사용되는 클래스이다. 이 클래스는 GUI (graphical user interface) 테스트, 스크린샷 캡처, 원격 제어 및 기타 자동화 작업에 유용하게 활용된다. 즉, 애플리케이션 자동 테스트나 데모를 자동으로 보여줄 목적으로 생성이 된 클래스라고 할 수 있다. Robot 클래스의 메서드 mouseMove(int x, int y) : 마우스 커서를 지정된 화면 좌표 (x,y) 로 이동시킨다. mousePress(int buttons) : 지정된 마우스 버튼을 누른다. -> 여기서 buttons 매개변수는 InputEvent.BUTTON1_DOWN_MASK (왼쪽 버튼), InputEvent..
[Cron] 크론(cron) 표현식 정리
·
JAVA
cron이란? 유닉스 및 유닉스 계열 운영 체제에서 주기적으로 작업을 예약하고 실행하기 위해 사용되는 시간 기반 작업 스케줄링 시스템이다. Cron 작업은 정해진 시간 또는 주기에 따라 실행되며, 주로 시간, 분, 일, 월, 요일 등의 정보를 사용하기에 자동화된 작업에 유용하게 쓰인다. 구성필드 @Scheduled(cron = "0 0 * * * ?") 분 (0-59) 시 (0-23) 일 (1-31) 월 (1-12) 요일 (0-6) 위와 같이 각 필드는 하나의 의미를 가진다. 분 (Minute): 0부터 59까지의 값으로 해당 분에 작업을 수행할 시간을 지정한다. 시 (Hour): 0부터 23까지의 값으로 해당 시간에 작업을 수행할 시간을 지정한다. 일 (Day of Month): 1부터 31까지의 값으..
로그 레벨로 로그를 효율적으로 사용하기
·
JAVA
개발을 하면서 로그를 남긴다는 것은 아주 중요한 일이다. 특히 24시간 365일 내내 돌아가는 프로그램들... 하지만 그렇다고 무분별하게 사용하다가는 정작 체크해야 할 심각한 에러로그들을 지나칠 수 있으니 적정 수준의 로그 레벨로 구분하여 사용하는 것이 중요하다. 로그(Log)란? 프로그램 개발이나 운영 시 발생하는 문제점을 추적하거나 운영 상태를 모니터링하기 위한 텍스트이다. 로그 레벨(Log level)이란? 해당 로그 메시지가 얼마나 중요한지를 알려주는 정보이다. 로그 레벨 단계 TRACE > DEBUG > INFO > WARN > ERROR > FATAL TRACE 가장 상세한 로그 레벨로, 애플리케이션의 실행 흐름과 디버깅 정보를 상세히 기록한다. 주로 디버깅 시에 사용된다. DEBUG 디버깅 ..
해니01_15
'JAVA' 카테고리의 글 목록 (7 Page)