Query Dsl 시작하게 된 계기 이전에 프로젝트에서 써봤는데 더 알고 싶어졌고, 최근에는 프로젝트를 JPA로 하지 않았기 때문에 좀 까먹었었다. 정리 겸 나중에 기억나게 세팅하는 법부터 정리할 예정 Gradle설정 Spring Boot 3.x 설정입니다. 2.x설정은 또 다릅니다. 1. 의존성 추가 plugins { id 'java' id 'org.springframework.boot' version '3.2.1' id 'io.spring.dependency-management' version '1.1.4' } group = 'study' version = '0.0.1-SNAPSHOT' java { sourceCompatibility = '17' } configurations { compileOnly..
분류 전체보기
문제점 java.lang.IllegalArgumentException: Unable to serialize claims object to json: Unable to serialize object: Java 8 date/time type `java.time.LocalDateTime` not supported by default 문제발생코드 @Entity @Getter @AllArgsConstructor @NoArgsConstructor @Builder public class Authority extends BaseEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @JsonIgnore private Long id; private String..
문제점org.h2.jdbc.JdbcSQLIntegrityConstraintViolationException 문제 발생 코드 @DeleteMapping("/{commentNumber}/deleteComment") public ApiResponse deleteComment(@PathVariable int commentNumber) { commentService.deleteComment(commentNumber); return ApiResponse.of(HttpStatus.NO_CONTENT, null); } 무결성 제약 조건 위배 발생했다는 에러가 떴다.댓글 엔티티에 boardNumber 즉 fk로 엮여 있다.댓글을 삭제하려고 하니 부모인 board 엔티티에서 자식인 comment가 없어지려고 하자. 에러가..
네트워크를 왜 학습해야 할까? 서비스는 네트워크를 통해 사용자의 가치를 전달합니다. 네트워크 상의 이슈는 서비스에 심각한 문제를 발생시킬 수 있다.! 안정적인 서비스 운영을 위해 미리 네트워크를 학습해야한다. 내가 만든 서비스가 인기가 많아져서, 하루 만명의 유저가 사용한다고 생각해보자. 서버 한대가 힘겹게 요청을 받아들이고 있다... (서버 : 살려줘..) 결국 느려진 지연 요청과, 트래픽으로 인해 서버가 터지게 되어 많은 유저들을 잃게 되었다. (절망편) 망 AWS에서는 망과 관련된 개념이 몇 개 있습니다. 일단 리전(Region) - 제가 정리 해놓은 글도 있습니다. 버지니아로 리전을 하면 안 되는 이유 https://computerlove.tistory.com/entry/%EB%A6%AC%EC%A..
Proxy 대리 남을 대신하여 일을 처리 Spring Proxy Proxy 패턴 Network Proxy 여러가지 의미로 쓰인다. ! tmi) 제가 프록시를 접했던 것은 스프링에서 AOP 기능을 사용하여 공통의 작업을 따로 빼서 전 후로 작업을 수행하려고 할 때였습니다!. (영한님) 로깅 or method의 실행 시간 같은 것을 기록해놓을 때. AOP 기능을 쓸 수 있습니다.! 이때 의존관계 주입에서 진짜 클래스가 아닌 프록시 객체를 등록해놓고 요청이 오면 프록시 객체가 중간에 가로채서 작업을 수행하고(전) 진짜 클래스의 메서드가 실행된 후 또 작업을 실행하는(후) 과정에서 나온 개념이였습니다. 지금은 Network Proxy! 대신 처리하는 서버(간단하게 말하면) 프록시 서버(Proxy Server)는..
업무를 하던 중 서브 쿼리의 범위에 관한 에러가 발생하였다. SELECT (SELECT DEPT_NM (SELECT D.DEPT_NM AS DEPT_NM FROM ( SELECT DEPT ROW_NUMBER() ~ PARTITION () AS RN FROM USER_DEPT D WHERE D.USER_ID = U.USER_ID ) WHERE RN = 1 ) ) AS DEPT FROM BOARD B LEFT JOIN COMMENT C ON B.BOARD_ID = C.BOARD_ID LEFT JOIN USER U ON C.COMMENT_ID = U.USER_ID WHERE U.USER_ID = '입력된 값'; -- 유저 한 명 정보 나오게 됨 이런 쿼리였다. 일단 억지로 만들어 냈는데, 게시판에 댓글을 달은..