일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Grafana
- 개발자 취업
- CS
- aop
- wil
- 이진 탐색(binary search)
- HTML
- 99클럽
- Java
- 항해99
- 배열
- 메서드
- 회고
- github
- Spring
- 프로그래머스
- 자바
- 코딩공부
- 코딩
- 코딩문제
- 정렬 알고리즘(sort algorithm)
- GIT
- ArrayList
- Til
- cs 공부)준비
- Entity
- 면접(java
- 자료구조
- css
- 코딩테스트 준비
- Today
- Total
목록Til (89)
hayu's 개발 일지

영속성 컨텍스트란? 엔티티를 영구 저장하는 환경 애플리케이션과 DB 사이에서 객체를 보관하는 가상의 저장소같은 역할이다. 엔티티 메니저(EntityManager)를 통해 영속성 컨텍스트에 접근한다. → 엔티티 메니저를 통해 엔티티를 저장, 조회하면 엔티티 매니저는 영속성 컨텍스트에 해당 엔티티를 보관하고 관리한다. 영속성 컨텍스트는 JPA에서 사용되는 개념 중 하나이며, 엔티티(Entity) 객체를 영구 저장하고 데이터 베이스와 상호작용한다. 엔티티의 생명주기 비영속(new/transient): 영속성 컨텍스트와 관계가 없는 새로운 상태이다.(무관한 상태) 영속(managed): 영속성 컨텍스트에 관리되는 상태이다.(저장된 상태) 준영속(detached): 영속성 컨텍스트에 저장되었다가 분리된 상태이다...
열거형(enum) 이란? 열거형(Enum)은 요소, 멤버라 불리는 명명된 값의 집합을 이루는 자료형이다. 즉, 상수로 구성된 특별한 클래스이다. 클래스처럼 변수와 메서드를 가질 수 있지만, 상속이나 인스턴스를 생성할 수는 없으며, enum 값은 상수로 public, static, final 속성을 가지고 있어 변경될 수 없다. enum의 장점 데이터 값의 의미를 명확히 알 수 있다. 컴파일 시 데이터 타입 및 유효성 체크를 할 수 있다. enum 선언 방법 열거형은 enum 키워드를 사용하여 정의하며, 열거형의 이름은 보통 클래스명과 같이 첫 글자를 대문자로 시작한다. {} 안에 열거값(열거 상수)은 ,로 구분하며 대문자를 사용한다. 열거 상수가 여러 단어로 구성될 경우, 단어 사이를 밑줄(_)로 연결한..

wrapper 클래스 자바의 자료형은 크게 기본 타입(primitive type)과 참조 타입(reference type)으로 나누어진다. 대표적으로 기본 타입은 char, int, float, double, boolean 등이 있고 참조 타입은 class, interface 등이 있는데 기본 자료 타입을 객체로 다루기 위해서 사용하는 클래스들을 래퍼 클래스(wrapper class)라고 한다. 자바는 모든 기본타입은 값을 갖는 객체 생성이 가능하다. 이런 객체를 포장 객체라고도 하는데 기본 타입의 값을 내부에 두고 포장하기 때문이다. 래퍼 클래스로 감싸고 있는 기본 타입 값은 외부에서 변경할 수 없다. 값을 변경하고 싶다면 새로운 포장 객체를 만들 수 있다. 래퍼 클래스 종류 기본타입(primitive..

테스트 코드를 작성하는 이유? 테스트 코드를 작성하면 비용을 절감할 수 있다. 서버에서 실행해서 직접 테스트 해보지 않아도 되기 때문에 시간 단축이 가능하다. 테스트 코드를 통해 어떤 값이 주어졌을 때(Given), 어떤 실행을 하면(When), 어떤 결과가 나와야 하는지(Then)를 확인할 수 있기 때문에 코드를 파악하는데도 도움이 된다. → given - when - then 수정사항이 발생하면 기존의 코드에 영향을 주는지 테스트 코드를 통해 파악할 수 있다. 정확한 테스트 코드를 작성해 놓으면 실제 코드를 제대로 작성했는지 확인할 수 있다. (TDD : 테스트 주도 개발) TDD(Test-Driven Development : 테스트 주도 개발) TDD는 개발이 이루어진 다음 테스트 케이스 작성 및 ..
Spring Scheduler 선택 이유 Scheduler 주기적으로 또는 특정 시간에 작업을 실행할 수 있도록 도와주는 도구이다.단점 : 실행 시간의 예측이 어렵다. / 복잡한 작업 처리가 어렵다. / → 주기적으로 실행되어야 하는 간단한 작업에 적합하다. 실시간 처리가 필요하지 않은 경우에 사용된다. 장점 : 구현이 간편하다. / 다양한 스케쥴링 옵션이 있다. / 스프링 내부 기능와 통합이 용이하다. Batch(배치) 배치는 대량의 데이터를 처리하고 일괄 작업을 수행하기 위한 기능이다.단점 : 실시간 처리가 어렵다. / 설정과 구현이 복잡하다.→ 대량의 데이터를 처리할 때 적합하다. 데이터 정제 및 변환 작업이 필요한 경우 혹은 일괄적인 작업 실행이 필요한 경우에 사용된다. → 일괄 작업을 실행하는 ..

Scheduler 주기적으로 또는 특정 시간에 작업을 실행할 수 있도록 도와주는 도구이다. → 스프링 프레임워크에서 스케쥴러를 지원한다. Spring Scheduler 특징 추가적인 의존성이 불필요하다. (스프링 프레임워크의 기본 기능이다.) 사용이 쉽다(@Component와 @Scheduled 에너테이션 추가로 사용한다.) 1개의 Thread pool을 사용한다. → 스케쥴이 끝나야 다음 스케쥴 실행이 가능하다. Spring Scheduler 사용 방법 @Scheduled Spring Boot 에서 @Scheduled 을 사용하면 일정한 시간 간격으로, 혹은 특정 시간에 코드가 실행되도록 설정할 수 있다. @Scheduled 사용법 Application Class에 @EnableScheduling 를 ..