본문 바로가기

JAVA22

[JAVA] Log4j의 정의와 설정 Log4j 란? Log란 컴퓨터가 언제, 무슨 일을, 어떻게 했는지 남겨 놓은 기록으로, Log4j는 JAVA를 사용하여 Log를 남기는 도구입니다. Log4j는 자바 기반의 로깅 유틸리티로 Apache에서 만든 오픈소스 라이브러리입니다. 프로그램은 유지와 관리를 위해서 기록을 남기기 때문에 Log4j는 거의 전 세계 대부분의 JAVA 기반 서버와 응용 프로그램에서 사용하고 있습니다. Log4j는 옵션 설정을 통해서 선택적으로 로그를 남기거나 특정 파일에 로그를 생성하는 등 다양한 이점을 가지고 있습니다. Log4j 레벨 로그 레벨 설명 FATAL 아주 심각한 에러가 발생한 상태를 나타냄 ERROR 어떠한 요청을 처리하는 중 문제가 발생한 상태를 나타냄 WARN 프로그램의 실행에는 문제가 없지만, 향후 .. 2022. 9. 6.
[JAVA] 날짜 비교하기(Date, Calendar, LocalDate, LocalDateTime) JAVA 버전에 따라 날짜 비교하는 방법이 다릅니다. JAVA8 이전 1. Date java.util.Date 클래스를 이용하여 날짜를 비교할 수 있습니다. public boolean after(Date when) - 주어진 날짜가 매개변수로 전달받은 날짜보다 클 경우 true를 리턴하게 됩니다. public boolean before(Date when) - 주어진 날짜가 매개변수로 전달받은 날짜보다 작을 경우 true를 리턴하게 됩니다. public boolean equals(Object obj) - 주어진 날짜가 매개변수로 전달받은 날짜와 같을 경우 true를 리턴하게 됩니다. public int compareTo(Date date2) - 주어진 날짜가 매개변수로 전달받은 날짜와 같을 경우 0을 리턴.. 2022. 6. 13.
[JAVA] Get 방식과 Post 방식 Get 방식과 Post방식 GET방식과 POST방식은 HTTP 프로토콜을 이용해서 서버에 무언가를 전달할 때 사용하는 방식입니다. Get 방식 주로 데이터를 조회할 경우 사용(SELECT) Get방식은 Get이라는 영어단어의 뜻인 '가져오다'라는 방식을 따라, 어떠한 정보를 가져와 조회할 때 사용하는 방식입니다. URL에 데이터를 포함 Get방식은 URL에 파라미터를 포함시켜 요청을 합니다. 전송하는 길이에 제한이 있습니다. 캐싱 한번 접근한 뒤 다음번 요청엔 더 빠르게 접근하기 위해 데이터를 저장해두는데 이를 캐싱이라고 합니다. Get방식은 캐싱이 가능합니다. 그렇기 때문에, Post방식보다 속도적인 면에서 빠릅니다. Post 방식 주로 데이터를 추가, 수정할 경우 사용(INSERT, UPDATE, D.. 2022. 6. 3.
[JAVA] 현재 날짜, 시간 구하기 개발을 하다 보면 현재 시간을 추출하여 사용할 경우가 생깁니다. 그럴 경우 JAVA에서는 JAVA API를 사용하여 날짜, 시간을 구할 수 있습니다. 아래와 같이, JAVA8 이전과 이후로 사용하는 API가 차이가 납니다. JAVA8 이전 JAVA8 이후 java.util.Date java.time.LocalDate java.util.Calendar java.time.LocalTime java.time.LocalDateTime JAVA8 이전 JAVA8 이전의 날짜와 시간을 나타내는 Date, Calendar 클래스는 많은 부분이 Deprecated(더 이상 사용되지 않거나 중요도가 떨어짐) 되었으며, 가능하면 사용을 권장하지 않습니다. 1. java.util.Date import java.text.Si.. 2022. 5. 3.
[JAVA] Collection Framework(List, Queue, Set)과 MAP Java의 자료구조는 Collection Framework과 Map으로 나눌 수 있습니다. Collection Framework은 다수의 데이터를 쉽고 효과적으로 처리할 수 있도록 도와줄 수 있는 클래스의 집합이고, Map은 Key와 Value로 이루어진 자료 구조입니다. Collection Framework란? 자바에서 컬렉션 프레임워크(collection framework)란 다수의 데이터를 쉽고 효과적으로 처리할 수 있는 표준화된 방법을 제공하는 클래스의 집합을 의미합니다. 즉, 데이터를 저장하는 자료 구조와 데이터를 처리하는 알고리즘을 구조화하여 클래스로 구현해 놓은 것입니다. Iterator 인터페이스를 상속하는 Collection은 List, Queue, Set 으로 나뉘며, 각각의 요소들은 .. 2022. 3. 31.
[JAVA] Garbage Collection의 개념과 동작 원리 Garbage Collection은 자동으로 사용되지 않는 메모리를 정리해주는 기능입니다. 자바에는 Garbage Collection이라고 하는 메모리 관리 기능이 존재합니다. Garbage Collection 이란? 쓰레기를 수집한다는 이름에서 알 수 있듯이 프로그래머가 동적으로 할당한 메모리 영역 중 더 이상 사용하지 않은 자원을 찾아내어 해제하는 기능입니다. 앞글자를 따서 GC라고도 부르는데, 그 시작은 1959년에 존 매카시라는 인물이 LISP의 메모리 관리를 위해 처음 만들었다고 합니다. LISP란? 1958년 존 매카시가 개발하였으며, 대표적인 함수형 언어 중 하나이다. 등장 배경 옛날의 언어들은 동적인 메모리 할당 기능이 아예 없거나, 프로그래머가 할당한 뒤 수동으로 해제까지 하는 방식이 존.. 2022. 3. 28.
[JAVA] Lambda Expression(람다식) 1. 람다(Lambda)란? 람다식의 등장으로 자바는 객체 지향 언어의 특징과 함께 함수형 언어의 특성을 갖추게 되었습니다. 객체지향 패러다임 같은 데이터에 대해 다른 처리 절차(데이터를 처리하는 방식)를 여러 개 명시해야 하는 경우가 자주 발생하는데, 이때 공통된 데이터를 처리하는 절차를 하나로 묶어 데이터와 여러 절차를 하나의 단위로 다루는 패러다임 함수형 패러다임 주어진 데이터를 값으로 간주하고 새로운 값을 생성하는 함수에 초점을 맞춤으로써 메모리 관리에 부담을 제거 람다식은 1930년대 알론조 처치(Alonzo Church)라는 수학자가 처음 제시한 함수의 수학적 표기 방식인 '람다 대수(Lambda Calculus)'에 그 뿌리를 두고 있습니다. 람다식을 이용하면 코드가 간결해지도, 지연 연산 .. 2022. 3. 15.
[JAVA] JAVA 버전 별 특징(1 ~ 17 버전) JDK 1.0a2(1995년 5월) 1. 언어 자체가 정식으로 발표된 날이기도 합니다. 2. Oak라는 명칭으로 불리었습니다. JDK 1.0(1996년 1월) 1. 안정화 작업을 거친 1.0.2 버전에서 Java로 이름이 바뀌었습니다. JDK 1.1(1997년 2월) 1. 이너 클래스(Inner Class), JavaBeans, RMI, 리플렉션(Reflection), Calendar 유니코드 지원 등이 추가되었습니다. JavaBeans 란? JavaBeans는 자바로 작성된 소프트웨어 컴포넌트를 지칭합니다. Beans 규약 1. 기본 생성자가 반드시 존재해야 한다. 2. 모든 속성은 비공개이다. 3. 속성에 접근하고 꺼내올 수 있는 getter, setter 메서드를 구성한다. 4. Serializab.. 2022. 3. 15.
[JAVA] 접근제어자, 접근제한자(public, private, protected, default) JAVA에서는 변수, 메서드, 생성자에 대한 접근 권한을 지정할 수 있는 4가지의 접근제어자가 존재합니다. 1. 접근제어자란? 접근제어자는 클래스의 멤버인 변수와 메소드들의 접근 권한을 지정합니다. 종류는 4가지로 public, protected, default, private 이며, 접근 허용 가능 범위 순서 또한 아래와 같이 나타낼 수 있습니다. public > protected > default > private 아래의 표로 접근 권한 범위를 자세하게 확인할 수 있습니다.(허용 : O, 제한 : X) 접근자 클래스 내부 패키지 상속받은 클래스 이외의 영역 private O X X X default O O X X protected O O O X public O O O O public : 접근 제한이 .. 2022. 3. 4.
반응형