Reflection API란? reflection은 힙 영역에 로드된 class 타입의 객체를 통해 원하는 클래스의 인스턴스를 생성할 수 있도록 지원하고 인스턴스의 필드와 메소드를 접근 제어자와 상관없이 사용할 수 있도록 해준다. 실제로 reflection을 이용하여 Spring이나 Java 직렬화(jackson) 또는 JPA 같은 기술에서 많이 사용되고있는 기술이다. 제공해주는 method를 통해서 알아보자 public class Test { public static void main(String[] args) { Class collection = Class.forName("java.util.Collections"); System.out.println(collection); Class double = ..
@Test @DisplayName("데이터베이스에 존재하는 게시판을 10개 조회해온다.") void findAll() { for (int i = 0; i < 10; i++) { Board board = Board.builder() .title(Title.from("테스트 용입니다. " + i)) .content(Content.from("테스트용 Content 입니다. 재미있다아앙")) .build(); boardService.create(board, 1L); } Pageable pageable = PageRequest.of(0, 10, Sort.Direction.DESC, "id"); List boards = boardService.findAll(pageable); assertThat(boards.siz..
우리는 종종 Key - Value 구조의 HashMap을 사용한다. HashMap은 Key 중복이 없어 중복을 거르고 Key 값으로 빠르게 값을 찾아오기에 조회하는데에 이 점이 있다. 필자는 본 내용을 Map에 대한 사전 지식에 대해 다 갖고 있다는 전제하에 글을 써볼까 한다. HashMap이 중복 key를 걸러낼 수 있는 이유 자바는 모든 객체마다 고유한 hashcode를 갖는다. 이 hashcode는 해싱 알고리즘을 이용하여 만들어낸 코드로 내부 구현은 객체의 주소를 이용하여 만들어진다. public class HashEx1 { public static void main(String[] args) { String str1 = "hello"; String str2 = "world"; System.out..
1. MySQL 엔지 아키텍처 MySQL 전체구조 MySQL은 일반 상용 RDBMS와 같이 대부분의 프로그래밍 언어로부터 접근 방법을 모두 지원한다. MySQL 고유의 C API부터 시작해 JDBC나 ODBC 등응 모든 언어로 MySQL 서버에서 쿼리를 사용할 수 있게 지원한다. MySQL서버는 크게 엔진과 스토리지 엔진으로 구분할 수 있다. 그러면 한 번 살펴보자. MySQL 엔진 MySQL 엔진은 클라이언트로부터의 접속 및 쿼리 요청을 처리하는 커넥션 핸들러와 sQL 파서 및 전처리기, 퀴리의 최적화된 실행을 위한 옵티마이저가 중심을 이룬다. 또한 MySQL은 표준 SQL(ANSI SQL) 문법을 지원하기 때문에 표준 문법에 따라 작성된 쿼리는 타 DBMS와 호환되어 실행될 수 있다. 스토리지 엔진 ..
- Total
- Today
- Yesterday
- 프로그래밍
- JPA
- 면접준비
- 프로젝트
- IT
- 취준
- 자바
- 코딩
- DB
- CS
- swarm
- Kotlin
- 취업
- java
- thread
- 개발자
- 취업준비
- 코드
- 면접
- 백엔드
- 게시판
- Spring
- 동시성
- DevOps
- 개발
- MySQL
- docker
- Redis
- 인터뷰
- 면접 준비
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |