전체 글

전체 글

    [Spring Boot] REST-API 공통 에러(Exception) 처리 개발 과정

    https://kdyspring.tistory.com/44 [Spring Boot] REST-API 공통 응답(Response) 포맷 개발 과정 CRUD를 구현할때 R(Read)을 제외한 API들의 Response 값을 공통으로 클라이언트에 리턴해주는 기능을 개발했던 과정을 정리해 보겠습니다. 1. Response 값을 공통으로 리턴 시 얻게 되는 장점 - GET 요청 API kdyspring.tistory.com 이전 글에 이어서 System Exception 또는 Custom Exception 에러 발생 시 공통 Response 값에 에러 데이터들(에러 코드, 에러 메시지)을 객체에 담아서 공통으로 에러 데이터를 리턴해주는 기능을 개발한 과정에 대해 정리해 보았습니다. 1. System Excepti..

    [Spring Boot] REST-API 공통 Response 값 포맷 개발 과정

    CRUD를 구현할때 R(Read)을 제외한 API들의 Response 값을 공통으로 포맷하여 프론트에 리턴해주는 기능을 개발했던 과정을 정리해 보겠습니다. 1. Response 값을 공통으로 포맷하여 리턴해줄 때 얻게 되는 장점 - GET 요청 API를 제외한 모든 API들의 Response 값이 동일하기 때문에 백엔드와 프론트 둘 다 구조적인 측면에서 좋습니다. - 프론트 입장에서 공통 Response 값을 보고 편리하게 응답 상태를 구분할 수 있습니다. 2. Response 값 CASE 정리 CASE 1. 정상 (status = success) ex) CASE 2. 실패 (status = fail) ex) CASE 3. 에러 (status = error) 3. 공통 Response값에 사용될 ApiR..

    Spring Boot CORS 해결하는 법(ngrok CORS도 해결)

    외부 클라이언트에서 Spring Boot 서버에 접근했을 때 아래와 같이 CORS가 발생했을 때 해결 방법을 설명 드리겠습니다. 그리고 Ngrok 툴을 사용하여 터널을 여는 식으로 통신하신 분들이 생긴 CORS도 같이 해결 방법을 설명 드리겠습니다. 일반적인 CORS 해결 방법 입니다. 1. 아래와 같이 Controller클래스 위측에 @CrossOrigin 어노테이션을 추가하여 외부 클라이언트에 모든 접근을 허용해 줍니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 @RestController @RequestMapping("/login") @CrossOrigin(origins = "*", allowedHeaders = "*") public..

    JSP 파일 생성 후 첫 시작 <%@ 부분에 The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path 란 오류가 발생하였을 때

    The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path JSP 파일을 생성하자마자 Add Library 순으로 선택합니다. 3. Server Runtime을 선택하고 Next를 선택해줍니다. 4. 자신의 사용하는 톰캣 서버를 선택한 뒤 Finish를 눌러줍니다. 5. 톰캣 서버가 정상적으로 추가된 것을 확인한 뒤 Apply and Close 버튼을 눌러줍니다.

    이클립스(Eclipse)와 깃허브(Github) 연동하는법

    이클립스(Eclipse) 툴을 쓰시는 분들이시라면 굉장히 유용하게 사용하실 수 있는 이클립스 프로젝트와 자신의 깃허브(Github) 저장소(Repository)를 연동시키는 방법을 알려드리겠습니다. 1. 본인의 계정으로 Github에 접속한뒤 Repository 우측에 New버튼을 선택합니다. 2. Repository이름을 적은 뒤 Create repository 버튼을 선택합니다. 3. 그러면 이런 창이 뜨게되는데 칸 안에있는 주소를 복사한 뒤 Eclipse를 켜줍니다(이 복사한 주소는 8번째 단계에서 쓰이게 됩니다). 4. 본인이 방금 생성한 Github Repository에 저장하고 싶은 Project를 우클릭 한 뒤 Team -> Share Project 순으로 선택해줍니다. 5. Create버튼..

    Maximum upload size exceeded; nested exception is java.lang.IllegalStateException: The field pimage exceeds its maximum permitted size of 1048576 bytes 오류가 발생하였을때의 해결 방법

    Maximum upload size exceeded; nested exception is java.lang.IllegalStateException: org.apache.tomcat.util.http.fileupload.impl.FileSizeLimitExceededException: The field pimage exceeds its maximum permitted size of 1048576 bytes 위 오류는 클라이언트 측에서 넘어온 파일을 저장 할려고 할때 저장할 수 있는 파일의 최대용량을 설정해주지 않아 default값( 1048576 bytes)으로 설정이 돼서 저장할려고 하는 이미지 파일의 용량이 1048576 bytes를 넘어 발생하는 오류입니다. 해결방법은 아래와 같이 applicatio..

    Oracle DB 연결 과정중 The Network Adapter could not establish the connection 오류가 발생하였을때.

    IO 오류: The Network Adapter could not establish the connection Spring Boot 프로젝트에서 mybatis로 Oracle db연결을 하여 테스트 하는 과정에서 위와 같은 오류가 발생하였을 때 해결 방법을 설명드리겠습니다. 1. Window 키를 누른 후 서비스를 검색한 뒤 클릭 2. 이름에 Oracle이 붙어있는 서비스중에 실행중이 아닌 서비스가 존재한다면 마우스 우클릭 후 시작을 눌러 모두 실행중인 상태가 되도록 해줍니다.

    Starting Tomcat v9.0 Server at localhost' has encountered a problem 또는 Web server failed to start. Port 8080 was already in use 같은 톰캣 서버 충돌 오류 발생 시

    톰캣 서버를 실행하였는데 아래 사진과 같은 오류가 발생하거나 스프링 서버를 실행하였는데 Web server failed to start. Port 8080 was already in use. 오류가 발생하였을때의 해결 방법을 설명드리겠습니다. 1. 톰캣 서버를 더블 클릭 한 후 포트 넘버를 확인해줍니다. 2. cmd창을 켜주고 netstat -a -o 란 명령어를 입력합니다. 3. 그러면 이런식으로 현재 컴퓨터에서 사용중인 프로세스들이 나오는데 이 중에서 로컬주소가 방금 확인한 톰캣 서버 포트넘버와 겹치는게 있는지 확인한 후 그 프로세스의 PID를 확인하여 줍니다. 4. PID를 확인하였다면 충돌을 방지하기위해 강제종료 해주어야 하는데 예를 들어 PID가 28536 이라면 cmd창에 아래와 같은 명령어를..

    Tomcat 서버는 작동하는데 Spring Boot가 실행이 안되어서 HTTP 상태 404 - 찾을수 없음 에러가 발생하였을때

    Tomcat 서버는 실행 되는데 Spring Boot가 실행이 안되어서 HTTP 상태 404 - 찾을수 없음(Origin 서버가 대상 리소스를 위한 현재의 representation을 찾지 못했거나, 그것이 존재하는지를 밝히려 하지 않습니다)에러가 뜨시는 분들을 위해 저와 같은 문제를 겪으시지 않도록 해결 방법을 작성합니다. 1. 프로젝트 우클릭 -> Run As -> Spring Boot App 클릭 2. 1번대로 하였는데도 Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.Reason: Failed to determine a suitable driv..

    Spring Boot 프로젝트에서 Mybatis로 Mysql 데이터베이스(DB) 연동하는법

    사용자가 책 제목을 입력하면 Mysql테이블에 책이 저장되는 로직을 만듦으로써 Spring Boot 프로젝트에서 Mybatis로 Mysql을 연동하는 법을 알아보겠습니다. 1. porm.xml에 mybatis 와 mysql커넥터 그리고 jdbc 의존성을 추가하여줍니다. #porm.xml 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 org.springframework.boot spring-boot-starter-jdbc mysql mysql-connector-java runtime org.mybatis.spring.boot mybatis-spring-boot-starter 1.3.2 Colored by Color Scripter cs 2. application.properties 파일에..