목록분류 전체보기 (444)
코딩항해기
[Error/Spring] EmptyResultDataAccessException기능 테스트를 하는데 EmptyResultDataAccessException 예외가 발생했다.해당 예외는 조회한 결과 데이터가 없다는 예외로, 분명 데이터가 존재하는데 조회가 되지 않는다. 전달하는 데이터 오류해당 쿼minibcake.tistory.com 방금 전 에러를 해결하고 해당 DAO selectOne에서 새로 만난 에러이다. 해당 에러는 전에 포스팅해서 바로 원인만 기재하도록 하겠다. [Error/Spring] SQLErrorCodeSQLExceptionTranslatorSQLErrorCodeSQLExceptionTranslator팀 프로젝트 기능 확인을 하는 중에 예외가 발생했다. 현재 Error 발생 시 해당 ..
기능 테스트를 하는데 EmptyResultDataAccessException 예외가 발생했다.해당 예외는 조회한 결과 데이터가 없다는 예외로, 분명 데이터가 존재하는데 조회가 되지 않는다. 전달하는 데이터 오류해당 쿼리까지 제대로 찾아간 것이 로그로 보이니 condition값의 문제는 아니다.로그를 볼 때 쿼리를 실행하는데 필요한 storeNum의 값이 1로 View에서 Controller, Model로 잘 전달되고 있으므로 전달하는 데이터의 문제는 아니다. 사실 필요한 데이터가 전달되지 않았다면 쿼리문이 정상 실행되지 않아 다른 예외가 발생했을 것이기 때문에 데이터 전달 문제는 아니다. (1을 전달해야하는데 99를 전달한 상황이 아닌 이상) 쿼리문 조건 문제쿼리문이 정상 실행되었으니 문법 문제는 아니..
SQLErrorCodeSQLExceptionTranslator팀 프로젝트 기능 확인을 하는 중에 예외가 발생했다. 현재 Error 발생 시 해당 예외에 대해 출력하는 AOP가 있으므로 해당 AOP와 에러 페이지를 통해 문제를 확인할 수 있다. Error 발생 시 로그를 찍는 AOP 로그 500 에러 페이지 로그 SQLErrorCodeSQLExceptionTranslator 에러는 sql 실행에 문제가 있다는 이야기로 여러가지 원인이 있지만 가장 많은 비중을 차지하는 부분이 sql문 오류이다. 쿼리문 확인 이미... 인텔리제이에서 불가능한 쿼리라고 안내해주고 있지만 모델 파트 팀원을 신뢰하고 Dbeaver에서 한 번 더 확인해보겠다. (인텔리제이에서도 쿼리를 실행해볼 수 있지만 지금 String 연결..
기존에는 MVC 파트를 나눠 횡단으로 개발을 진행했다. 횡단 개발은 계층 별로 전체 기능을 개발하기 때문에 일관성 확보가 용이하고 기능을 빠르게 완성하기 용이한 방법이어서 팀 프로젝트를 진행할 때 횡단 개발 방식으로 진행했었다. 그러나 완성된 기능 검증을 하기 위해 기능 테스트를 해본 결과 개발 기간이 얼마 남지 않았는데, 사소한 문제들이 너무 많이 발생해서 최대한 중요한 서비스를 살리기 위해 종단 개발 방식을 병행하기로 했다. 종단 개발 방식을 독단으로 진행하면 팀에 혼선을 줄 수 있기 때문에 해당 문제를 종단으로 해결할 것임을 사전에 팀원들에게 공유했으며 큰 구조 변경은 횡단 개발 방식을 유지하기로 했다. 1. 설계확인하기현재 기능 검증할 페이지는 메인 페이지이다.로컬 서버를 실행하면 가장 먼저 뜨는..
z-indexz-index 속성은 위치 지정 요소와 자손 또는 하위 플렉스 아이템의 z축 순서를 지정한다. 즉, 요소가 쌓이는 순서를 제어하는 속성을 의미한다. (값이 적을수록 아래에 쌓이게 된다.) 위치 지정 요소position 속성으로 relative, absolute. sticky, fixed 등이 지정되어 있는 요소를 뜻한다. z-index 동작방식쌓임 맥락 Stacking Context쌓임 맥락이란 가상의 Z축을 사용한 HTML 요소의 3차원 개념화이다. 웹페이지는 단순한 평면 구조가 아니라 x,y,z축으로 이루어져있다. (레이어 개념과 유사) 이 때 Z축을 통해 요소의 우선 순위를 결정하게 된다. (어떤 요소가 위에 올라갈지) 웹페이지는 이러한 3D개념을 가지고 있기 때문에 엣지 개발자도구를..
[10분 테코톡] 주디의 Garbage Collector GC (Garbage Collector)C,C++에서는 코드레벨에서 메모리를 할당 받고, 해제하는 작업이 필요했다. 실수하면 Memory Leak가 발생할 수 있고, 번거로운 일이었다. 반면 JAVA에서는 GC가 Heap 메모리에서 unreachable한 객체를 삭제해 관리한다. 코드레벨의 메모리 관리에서 벗어났기 때문에 직접 관리할 필요가 없어 편리하다. GC 장단점장점Memory Leak 발생할 일이 없다.휴먼 에러 발생 가능성을 낮춘다. (해제된 memory에 접근, 또는 이중 해체 등이 있다)단점성능 저하가 있다. (어떤 메모리를 해제해야하는지 검사하고 삭제하는 과정 또한 자원과 메모리를 필요로 한다.)개발자가 언제 메모리가 해제되는지 ..
Model 설계 자료를 바탕으로 Controller에서 사용할 crud표를 제작했으며, Controller에서 필요한 DTO 필드값 추가를 요청했다.Model파트 자료 (전체 1024)이미지 더보기엑셀 erd더보기 Controller 담당 파트 정리 (CRUD, DTO)(payment, point, order는 해당 파트를 담당하는 Controller 팀원이 설계에 맞춰 정리) crud 이미지 dto이미지 (수정한 부분 보라색 표기, 파란색은 controller에서 관리하는 DTO)더보기 엑셀
인텔리제이의 로컬 서버는 target 폴더를 통해 빌드한 소스로 보여주기 때문에 정적리소스가 추가되면 서버를 재시작하지 않는 이상 반영되지 않는다. 이 문제를 로컬 서버 설정 수정을 통해 해결할 수 있다. 서버 war 수정에 들어가면 directory가 있다. target 폴더로 지정되어있는 것을 확인할 수 있다. 이 부분을 webapp으로 변경하기만 하면 된다.
기존 MultipartFile를 연습할 때 기능 구현은 거의 마쳤기 때문에 해당 실습에서는 흐름을 정리하고 유효성 검사 추가와 자잘한 에러를 수정하는 위주로 진행했다. [Spring] 파일 입출력 MultipartFileMultipartFile을 사용해 이미지 파일을 업로드할 수 있다.먼저 MultipartFile로 이미지 파일을 업로드 받기 위해서는 몇 가지 환경을 조성해야한다. DTO에 MultipartFile을 타입으로 갖는 필드 추가해당 필minibcake.tistory.com 문제먼저 3가지의 문제가 있었다. 1. 수정할 사진을 넣지 않고 사진 업로드를 누르면 500번 대 에러가 발생하는 문제2. 작성자가 아닌 글의 사진도 수정할 수 있는 문제3. 사진이 없는 글을 들어가면 500번 대 에러..