spring(35)
-
[Spring] SOP & CORS
CORS(교차 출처 리소스 공유) | 토스페이먼츠 개발자센터CORS를 번역하면 “교차 출처 리소스 공유”에요. ‘두 출처가 서로 다르다’는 뜻인데요. CORS를 설정한다는 건 ‘출처가 다른 서버 간의 리소스 공유’를 허용한다는 거죠.docs.tosspayments.com 1. Origin이란? Origin = Protocol + Host + Port 2. SOP란? SOP(Same-Origin Policy, 동일 출처 정책)는 웹 보안의 중요한 개념 중 하나로, 특정 출처(origin)에서 로드된 문서나 스크립트가 다른 출처의 리소스와 상호작용하지 못하도록 제한하는 정책이다. SOP는 웹 브라우저가 클라이언트 측에서 악의적인 스크립트가 다른 출처의 콘텐츠에 접근하지 못하도록 하기 위해 도입되었다. 가...
2024.07.06 -
[Spring] SpringBoot
1. SpringBoot란? Spring Boot spring.io Spring Boot는 제품 수준의 Spring 애플리케이션을 쉽게 만들 수 있게 도와준다. Spring 플랫폼과 다른 라이브러리를 활용하면, 복잡한 설정 없이 바로 시작할 수 있다. 대부분의 Spring Boot 애플리케이션은 간단한 Spring 설정만 필요하다. 복잡한 설정을 자동화.자주 사용되는 library들이 조합되어 있다. (starter dependency 제공)서버를 내장하고 있어서 Tomcat, Jetty와 같은 별도의 WAS 설치가 필요 없다.WAS에 배포하지 않고도 실행할 수 있다. 2. 시작하기 가. Spring initializr https://start.spring.io/ SpringBoot 프로젝트를 생성하는 ..
2024.07.06 -
[Spring] Rest API
1. Rest란? Representational State Transfer하나의 URI는 하나의 고유한 리소스를 대표하도록 설계된다는 개념. URI + HTTP Method (GET/POST/PUT/DELETE) HTTP URI를 통해 제어할 자원을 명시하고, 어떤 제어를 명령할지는 HTTP Method를 통해 설정하는 방식. Method설명POSTCreateGETReadPUT, PATCHUpdateDELETEDelete 서비스 유형설명기존의 서비스요청 처리 후, 가공된 데이터를 이용해 특정 플랫폼에 적합한 형태의 View로 반환Rest 서비스데이터 처리만 하거나, 처리 후 반환할 데이터가 있다면 JSON이나 XML 형식으로 반환 💡 Q. View를 반환하는 경우도 있지 않았나?HTTP URI를 통..
2024.07.06 -
[Spring] MyBatis-Spring module
mybatis-springGetting Started This chapter will show you in a few steps how to install and setup MyBatis-Spring and how to build a simple transactional application. Installation To use the MyBatis-Spring module, you just need to include the mybatis-spring-3.0.3.jar filemybatis.org 1. 설치 MyBatis-Spring module을 사용하기 위해서는 mybatis-spring-3.0.3.jar 파일과 그 외 dependencies를 classpath에 추가해야 한다. 단, Maven을 ..
2024.07.06 -
[MyBatis] MyBatis란?
0. pdf 읽고 정리하기. 1. ORM이란? Object-Relational Mapping데이터베이스와 객체 지향 프로그래밍 언어 간의 호환되지 않는 데이터를 변환하는 프로그래밍 기법이다. 2. MyBatis란? Java Object와 SQL문 사이를 자동으로 Mapping하는 ORM framework. SQL을 별도의 파일로 분리해서 관리하다. SQL에 변경이 있을 때마다 자바 코드를 수정하거나 컴파일하지 않아도 된다. SQL을 전담하는 DBA와 협업이 원활하다. 새로운 DB 프로그래밍 패러다임에 대한 부담 없이, 익숙한 SQL을 그대로 이용하면서 JDBC 코드 작성의 불편함을 줄일 수 있다. 도메인 객체나 VO 객체를 중심으로 개발이 가능하다. 다양한 프로그래밍 언어를 지원한다. 3. 예시 My..
2024.07.06 -
[Spring] Connection Pool
1. Connecion Pool이란? Connection Pool은 데이터베이스와의 Connection을 미리 생성하고, 이를 Pool에서 관리하는 기술이다. 데이터베이스로의 추가 요청이 필요할 때 연결을 재사용할 수 있도록 관리되는 데이터베이스 연결의 캐시이다. Connection Pool이 시작될 때 특정한 수의 물리적 커넥션을 만들며 이는 애플리케이션 실행 중에 커넥션 생성, 해제하는 오버헤드(Overhead)를 줄여준다. 또한, 동시에 많은 요청이 들어와도 안정적으로 처리할 수 있게 해준다. 2. Java에서 Connection Pool 사용하기 DataSource: 애플리케이션이 데이터베이스와 상호작용할 수 있도록 하는 연결을 관리하는 객체다.: 애플리케이션은 데이터베이스에 직접 접속하는 대신..
2024.07.06 -
[Spring] File Upload & Download
0. 기존 포스팅 [Spring] 도서 등록, 검색0. 출처 아직 배우고 있는 중이라 부정확한 정보가 포함되어 있을 수 있습니다! 주의하세요! 올인원 스프링 프레임워크 참고. 올인원 스프링 프레임워크 : 네이버 도서 네이버 도서 상세정보를ramen4598.tistory.com 추가한 이유:java 라이선스 문제로 6.x 버전부터는 CommnonsMultipartResolver를 사용할 수 없다.업로드할 파일의 정보를 저장하는 별도의 FileInfoDto를 정의해 업로드하는 방법이니깐 알아두자. 1. File Upload 가. pom.xml ... commons-fileupload commons-fileupload ${commons-file..
2024.07.06 -
[Spring] ControllerAdvice
1. ControllerAdvice 예외 발생 시 매번 try-catch를 해도 되지만 귀찮다. @ControllerAdvice은 비즈니스 로직과 예외 처리를 완전히 분리시켜줌과 동시에 원하는 곳에 원하는 방식으로 예외를 처리할 수 있게 해 준다. appServlet org.springframework.web.servlet.DispatcherServlet contextConfigLocation /WEB-INF/spring/appServlet/servlet-context.xml throwExceptionIfNoHandlerFound true 1spring 6.1 버전부터는 throwExcepti..
2024.07.06