일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- DDL
- 생성자 주입
- stream
- jpa
- 조합
- jwt
- select_type
- static
- 필드 주입
- 재정의
- redis
- java
- StringBuilder
- KEVISS
- 바이너리 카운팅
- 열 속성
- 인덱스
- 테스트 코드
- AOP
- equals
- Test
- cache
- VUE
- DI
- MSA
- hashcode
- docker
- SQL
- lambda
- Spring
- Today
- Total
목록전체 카테고리 (196)
백엔드 개발자 블로그
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/dNv8Ry/btsHiHqXe8w/djNh6tansNZQQQG3kZssH0/img.png)
테스트 코드를 작성 해야 하는 이유?코드를 믿을 수 없다배포하고 돌려본다에러가 발생하면 재배포해서 다시 돌려본다기능을 추가하거나 변경할 때마다 이전에 동작한 모든 기능들에 대해서 잘 동작하는지 돌려보면서 확인해본다..요구사항을 알수 없다작가 정보를 추가한다작가 테이블에는 사용자 정보가 존재해야 저장이 가능하다사용자가 탈퇴후 작가 정보를 추가한다면..?FK 제한이 있어 에러가 발생한다..기능을 변경하거나 확장하기 어렵다작가명을 20자에서 30자로 변경하려고 한다파라미터의 글자수 제한을 변경하였다그리고 배포하였다..하지만 디비 스키마는 반영되지 않았다..배포한 이후에 작가명 수정 API에서 에러가 발생한다…단위 테스트 vs 통합 테스트단위 테스트단위 테스트에 대한 기준은 없다. 단위 테스트는 최소한의 범위로..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/b3wV8I/btsHgeXXM1I/NA7bHz6u06OU4NiNZe6xw1/img.png)
JPA N+1 문제에 대해 알아보자N+1 문제란?연관 관계에서 발생하는 이슈로 연관 관계가 설정된 엔티티를 조회할 경우에 조회된 데이터 갯수(n) 만큼 연관관계의 조회 쿼리가 추가로 발생하여 데이터를 읽어오게 된다. 이를 N+1 문제라고 한다. 그러면 실제로 어느 경우에 발생하는지 사례를 통해서 알아보자.엔티티 설정코드는 단순하다. 고양이와 고양이 집사의 관계를 표현해보겠다.고양이 집사는 여러 마리의 고양이를 키우고 있다.고양이는 한 명의 집사에 종속되어 있다/** * @author Incheol Jung */@Entity@Getter@Setter@NoArgsConstructorpublic class Owner { @Id @GeneratedValue(strategy = GenerationTyp..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/FhYZA/btsHh8Cxjya/q9k2D2zuZSumyhVclz8iBk/img.png)
STREAM에 대해서 알아보자스트림이란?스트림이란 데이터 처리 연산을 지원하도록 소스에서 추출된 연속된 요소로 정의할 수 있다.연속된 요소`컬렉션`과 마찬가지로 `스트림`은 특정 요소 형식으로 이루어진 연속된 값 집합의 `인터페이스`를 제공한다. 컬렉션의 주제는 `데이터`이고 스트림의 주제는 `계산`이다. 추후 이 차이에 대해 더 살펴보겠다.소스스트림은 `컬렉션`, `배열`, `I/O 자원` 등의 데이터 제공 소스로부터 데이터를 소비(`consume`)한다.데이터 처리 연산스트림 연산은 `순차적`으로 또는 `병렬`로 실행할 수 있다.스트림 특징파이프라이닝연산 파이프라인은 `데이터 소스`에 적용하는 데이터베이스 `질의`와 비슷하다.내부 반복반복자를 이용해서 명시적으로 반복하는 컬렉션과 달리 스트림은 `내부..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/ckvLRR/btsHfXUUBwW/8sN4Nw7nylPXcbHXTcdcc0/img.png)
Lambda expressions람다란 무엇인가?람다 표현식은 메서드로 전달할 수 있는 익명 함수를 단순화한 것이다.익명 : 보통의 메서드와 달리 이름이 없으므로 익명이라 표현한다.함수 : 람다는 메서드처럼 특정 클래스에 종속되지 않으므로 함수라고 부른다.전달 : 람다 표현식을 메서드 인수로 전달하거나 변수로 저장할 수 있다.간경성 : 익명 클래스처럼 많은 자질구레한 코드를 구현할 필요가 없다.람다의 구성 요소파라미터 리스트화살표 : 파라미터 리스트와 바디를 구분한다.바디 : 람다의 반환값에 해당하는 표현식형식 검사, 형식 추론, 제약람다 표현식 자체에는 람다가 어떤 함수형 인터페이스를 구현하는지의 정보가 포함되어 있지 않다. 따라서 람다 표현식을 더 제대로 이해하려면 람다의 실제 형식을 파악해야 한다...