반응형 I LEARNED78 [TIL] [troubleshooting] java.net.SocketTimeoutException: connect timed out 에러 해결 API 요청의 처리가 오래 걸리게 되면, java.net.SocketTimeoutException 가 발생 Spring의 property 파일( application.yaml )의 timeout 시간을 늘려주면 된다 -1을 설정하면 timeout이 무한대가 되어 timeout이 발생하지 않는다 그렇지 않으면 ms 단위로 원하는 시간을 입력해주면 된다. ------------------------------------------------------ yaml 형식을 사용 중이면 server: tomcat: connection-timeout: -1 ------------------------------------------------------ properties형식을 사용 중이면 server.tomcat... 2022. 9. 27. [TIL] [troubleshooting]@RequestPart(required = false) List로 값을 받을 때 생긴 오류이다. List자체의 널값을 체크할 수 없다고 구글링에서 찾았기에 List의 값을 널체크를 해주는 로직을 짰다. if문을 통해 checkNum이 1인 경우에는 이미지를 출력하는 로직을 구현했는데,이미지와 글을 같이 올릴때는 문제가 되지 않았다.그러나 글만 올렸을 때는 for(MultipartFile findFile : multipartFile) 부분에서 지속적인 에러가 나서,확인을 해보니 Controller부분에서 아래와 같이 required = false로 설정을 하면 값을 미기입시 null처리가 되는 것이었다. required = false와 같이 써주면 아래의 postMan예제처럼 multipartFile에 값을 입력하지 않는다면 Null이 출력되었다. 그래서 부분.. 2022. 9. 15. [TIL]글자 길이 제한 @Size/@Length 문제 Springboot에서 한 Column에 대한 글자 수 제한 default값이 255인것을 알고,프론트분들의 요청에 따라 Article Entity부분을 400으로 고쳤다.그러나 Dto쪽에서 출력이 안돼서 확인해보니 값은 테이블에 값이 400까지는 들어가나 Dto에는 글자 수 제한을 안해둬서 @Size(max=400)를 통해서 재확인후 리턴값이 가능했다. 참고사항 import javax.validation.constraints.Size @Size는 연결된 문자열의 길이가 min/max에 맞게 유효한지 확인하는 Bean Validation 어노테이션이다. import org.hibernate.validator.constraints.Length @Length는 Hibernate Validation 어노.. 2022. 9. 14. [TIL]지역변수 구분의 중요성 List commentResponseDtoList = new ArrayList(); 새로운 리스트 선언 부분이 수정전에는 findArticle의 forEach문 밖에 있어서 for문이 돌때마다 리스트가 초기화되지않고 값이 쌓이다보니 모든 댓글이 모든 게시글에 붙어 나오고 있었다.사소한 문제였지만 내 눈에는 보이지 않던 부분이 다른 팀원에게는 로직을 보자마자 보였다고 한다. 여러 인원이 같이하는 프로젝트인만큼 본인이 짠 로직이라도 다른 팀원에게 코드를 한번 봐달라고 하는것도 좋은 것 같다. 2022. 9. 11. [TIL] MultipartFile null체크 디버깅의 중요성에 대해 알게된 것 같다. 어디부터 문제가 생기는데 로깅이나 디버깅을 통해 확인하는 것을 꼭꼭꼭꼭 스파게티 확인하도록 하자! 참고로 List multipartFile 이다. 이미지 파일을 올려도, 안올려도 된다는 상황이면 null체크를 해야 불필요하게 AwsS3에 업로드 되는 것을 막을 수 있다. 하지만 저렇게 코드를 짜니 이미지 파일을 선택안했을 때 쓰레기 값이 S3에 올라가는 것을 발견했다. 새로 알게된 사실은 MultipartFile은 null체크할 때 isEmpty()를 사용한다. List형식이기 때문에 반복문으로 List 내부의 이미지파일에 isEmpty()를 적용해야한다. 개선후 참고자료: https://intrepidgeeks.com/tutorial/java-multipartf.. 2022. 9. 8. [TIL] [JPA] @OnDelete VS cascade = CascadeType.REMOVE @OnDelete DDMS 레벨에서 작동 @OnDelete(action = OnDeleteAction.CASCADE) DDL 생성시 cascade 제약 조건이 생성 됨. 여기서 DDL이란 Data Definition Language로 데이터 베이스를 정의하는 언어이며, CREATE, ALTER, DROP, TRUNCATE를 말한다. casecade=CascadeType.REMOVE JPA 레벨에서 작동 JPA가 부모 엔티티를 삭제할 때 연관된 자식 데이터에 대한 DELETE 쿼리를 실행 함 1. cascade = CascadeType.REMOVE를 설정할 경우 자식 엔티티를 삭제하는 쿼리가 먼저 실행되고, 그 다음 부모 엔티티를 삭제하는 쿼리가 실행 된다. 그리고 자식 엔티티 한 건을 삭제 하려고 하면 .. 2022. 9. 6. WIL_실전2주차 말의 의미는 말을 하는 이가 아닌 말을 듣는 이에 따라 달라진다. 항해를 하며 제일 많은 에러들을 마주하는 것 같다. 일반 게시판에서 벗어나 여러가지 기능들을 추가하다보니 정신이 없어서 그런지 자잘한 에러들에 한번에 엄습당했다 그렇지만 기존에 부족했던 부분들도 같이 채워지는 느낌이라 뿌듯함도 동반되었던 것 같다. 팀원들과 많은 얘기들을 하며 느끼지만,내가 아직 말하는 방식이 부족한 것 같아서 팀원들에게 배울점이 많은 것 같다. 서로 파이팅할수있는 팀원들을 만나서 좀더 열심히 하게 되는 것도 있고,팀장을 맡게 돼서 더 하려고 하는 경향도 있는 것 같다. https://veganwithbacon.tistory.com/58 트슈_Intellij 실행시 Lombok Requires Annotation Proce.. 2022. 9. 6. 이전 1 ··· 5 6 7 8 9 10 11 12 다음 반응형