일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- chart.js
- codedeploy error
- VPN
- bootstrap
- AWS CI/CD 구축하기
- or some instances in your deployment group are experiencing problems.
- codepipeline
- Spring Error
- Spring
- JavaScript
- java bigdecimal
- 도커
- Flux
- Python
- node
- aws cicd
- Jenkins
- SQL
- COALESCE
- IntelliJ
- PostgreSQL
- kubeflow
- chartjs
- codedeploy
- Kafka
- aws
- redis
- Airflow
- codebuild
- docker
- Today
- Total
목록백엔드/Spring (134)
Small Asteroid Blog
JPA 에서 제공하는 Page를 사용하고 싶은데 데이터를 가공해서 사용하다 보니 List 로 결과가 나오고 있어서 List를 Page로 변환해서 사용하고자 한다. 아래 코드를 참고해서 List 를 Page로 변환해서 사용하면 된다. 방법1 Page pageResult = (Page) PageUtils.makePageResponse(list, pageable); 페이징 처리를 위한 공통 코드 public static Page makePageResponse(List list, Pageable paging, int totalCount) { try { return (new PageImpl(list, paging, totalCount)); } catch (Exception e) { return (new PageI..

이슈 원인 Member 엔티티와 Company 엔티티간의 연관관계가 있는데 Company 엔티티에서 JSON으로 반환하는 과정에서 생긴에러로 Company에더 LAZY JOIN을 해도 JSON으로 변환하는 중 직렬화(serialize) 과정을 거치는데 Member에 Company가 있어서 Company를 참조하고, Company에 있는 Member 를 참조하면서 무한 재귀가 발생했다. 해결방법 @JsonIgnore 참조하는 엔티티에서 (재귀를 일으키는) 필드에 @JsonIgnore 를 추가한다. DTO 생성 엔티티로 반환하지 않고 리턴용 DTO를 따로 만들어서 사용한다. 해결 나는 두번째 해결 방법인 DTO로 반환해도 해당 문제가 생겼는데 DTO 에서 엔티티 정보 전체를 가져오는게 있다보니 생기는 문제였..

실무에서 JPA를 사용하는데 개념적인 부분을 집고 넘어가면 좋을 것 같아서 강의를 보게 되었고 인프런 강의를 보고 내용 정리를 해보았다. 프로젝트 어노테이션 @NoArgsConstructor(AccessLevel.PROTECTED) 엔티티에서 레벨을 protected 까지로 한다 Protected 로 설정하는 이유는 무분별한 객체 생성에 대해 한번 더 체크할 수 있게 한다. 그러나 @Builder와 같이 사용하고 싶다면 AllArgsConstructor 와 같이 사용하거나 @Builder @AllArgsConstructor @NoArgsConstructor(access = AccessLevel.PROTECTED) 안에 @Builder를 계속적으로 선언해서 사용해야한다. @Builder 를 사용하면 의미있..

@Query에서 sum 을 사용하는데 결과가 Null이 나오는 데이터를 0으로 반환하고 싶다면 COALESCE 을 사용해준다. COALESCE 는 null이 아니면 첫번째 값, null 이면 두번째 값을 반환한다. @Query("select COALESCE(sum(c.price),0) from Calculate c where c.companyId = :companyId")
jpql 을 사용할때 다음과 같은 에러가 나왔다. nested exception is java.lang.IllegalArgumentException: Could not locate appropriate constructor on class 원인으로는 column의 순서가 맞지 않거나 type이 맞지 않아서 생기는 오류이다.

api 를 호출할 때마다 response, request 값의 로그를 log.info() 를 통해 작성하는 것이 비효율적이라고 느껴져서 공통적인 모듈을 사용해서 api 호출할때마다 로그를 안찍어도 출력될 수 있게 사용하고 싶었다. 로그를 남겨서 에러가 발생했을 때 빠른 대처와 api 흐름이 정상 동작하고 있는지에 대해 파악하기에도 좋다. build.gradle 에 의존성 추가 // aop implementation 'org.springframework.boot:spring-boot-starter-aop' //Joiner implementation 'com.google.guava:guava:31.1-jre' aop 를 사용하기 위해 의존성을 추가해준다. 코드에서 joiner 를 사용하기 위해선 관련 의존성..