jenkins로 CI를 하던 와중 jenkins 서버 내 용량이 이상하리 만큼 많이 쌓여서 원인을 분석하면서 storage driver에 대해 알게 됐습니다. storage driver를 잘 알고 있지 못하면 생기는 문제 그리고 storage driver 종류에 따라 생기는 문제를 알아보겠습니다. Storage Driver란? docker storage driver는 docker image로 부터 container를 생성하는데 이 때 docker image는 application code, system, library등을 포함합니다. 그리고 이를 저장하고 관리하기 위해선 store system이 필요한데 이것을 storage driver 이라고 합니다. 또한, storage driver는 image가 여..
JPA란? 이 관계를 알아보기 위해 JPA를 쓰는 이유에 대해서 알아봐야합니다. JPA는 ORM 기술 중 하나로 hibernate를 기반으로 자바의 객체와 DB 테이블 간의 패러다임 불일치 문제를 해결해주는 기술입니다. RDB와 Object는 엄연히 다른 존재이지만 이 불일치를 해결하기 위해 여태 많은 개발자들은 RDB 중심의 애플리케이션 개발을 주로 했습니다. 하지만 JPA가 나오면서 부터 이 불일치 문제를 해결하는 장점을 바탕으로 객체 중심의 개발이 이루어지기 시작했는데 이것이 바로 JPA의 장점이라 할 수 있습니다. public class Member { private Long id; private String email; private String password; private String na..
Spring boot를 처음 설정해놓으면 Application 클래스에 @SpringBootApplication이라는 어노테이션을 볼 수 있다. 그리고 그 안에는 여러가지 주석이 존재한다. @SpringBootConfiguration과 @EnableAutoConfiguration 그리고 @ComponentScan이 존재한다. @EnableAutoConfiguration 이 주석은 AutoConfiguration을 쓰겠다는 것을 의미한다. AutoConfiguration은 해석하면 자동 설정이라는 뜻으로 다음과 같은 Spring.factory에 저장되어 있는 정보들을 가지고 자동으로 스프링 빈으로 등록해준다. 그렇기 때문에 우린 별다른 설정 없이 스프링을 자유롭게 사용할 수 있다. 생각을 해보면 Sprin..
저번에는 성능 향상과 Stream에 동작 순서에 대해 알아보았다면 이제는 Optional에 대해 알아보자 Stream은 지연 처리를 통해 연산을 하여 값을 도출해낸다. 그렇다면 정확한 이유와 흐름에 대해 파악해보자 Stream 지연 처리 예제 코드를 먼저 살펴보자 public class StreamLazyCal { public static void main(String[] args) { int[] arr = {1, 2, 3, 4, 5, 6, 7}; int sum = Arrays.stream(arr) .filter(n -> n % 2 == 1) .sum(); System.out.println(sum); } } 이 예제 코드는 배열을 filter를 통해 홀수만 걸러내어 그 합을 출력하는 코드이다. Strea..
finally 블록 finally 블록은 보통 예외의 발생 여부와 상관없이 꼭 실행되어야 할 코드를 이 블록에 넣어 마지막에 출력하도록 처리한다. try { // 예외 처리가 발생할 가능성이 있는 로직 작성 } catch (Exception e) { // 예외 발생시 실행되는 로직 보통 에러 메시지를 출력 } finally { // 예외 발생 여부와는 상관없이 수행되는 로직 // finally 블럭은 try-catch문 마지막에 위치해야 함 } 예외 발생 시 try -> catch -> finally 순, 예외가 발생하지 않았을 땐 try -> finally 순으로 실행된다. 예제를 살펴보자 package exception; public class FinallyEx1 { public static void..
- Total
- Today
- Yesterday
- JPA
- docker
- 코드
- 자바
- 게시판
- java
- DevOps
- CS
- Spring
- 취준
- 인터뷰
- IT
- 개발
- 프로젝트
- Kotlin
- swarm
- DB
- 동시성
- 면접
- 코딩
- 백엔드
- 취업
- 면접 준비
- Redis
- MySQL
- 개발자
- 면접준비
- 프로그래밍
- thread
- 취업준비
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |