본문 바로가기

WEB/Spring9

[Spring] SpringBoot (스프링부트) SpringBoot SpringBoot란? : 스프링 부트(Spring Boot)는 단순히 실행되며, 프로덕션 제품 수준의 스프링 기반 어플리케이션을 쉽게 만들 수 있는 도구이다. 스프링부트 어플리케이션에서는 스프링 구성이 거의 필요하지 않으며 Spring Book java-jar로 실행하는 Java 어플리케이션을 만들 수 있다 Spring Boot의 목표 - Spring 개발에 대해 빠르고, 광범위하게 적용할 수 있는 환경 - 기본값 설정이 있지만 설정을 바꿀 수 있다 - 대규모 프로젝트에 공통적인 비 기능 제공(보안, 모니터링 등등) - XML 구성 요구사항이 전혀 없다. Spring Boot의 장점 1. 어플리케이션 개발에 필수 요소들만 모아두었다. 2. 간단한 설정으로 개발 및 커스텀이 가능하다... 2022. 4. 27.
[Spring] Spring REST API Spring REST API REST(Representational State Transfer) : 하나의 URI는 하나의 고유한 리소스(Resource)를 대표하도록 설계된다는 개념에 전송방식을 결합해서 원하는 작업을 지정한다. HTTP URI를 통해 제어할 자원(Resource)를 명시하고, HTTP Method(GET,POST, PUT, DELETE)을 통해 해당 자원을 제어하는 명령을 내리는 방식의 아키텍쳐 REST구성 - 자원 (Resource) : URI - 행위 (Verb) : HTTP Method - 표현 (Representations) 기존Service와 REST Service의 차이점 기존 Service : 요청에 대한 처리를 한 후 가공된 data를 이용하여 특정 플랫폼에 적합한 형태.. 2022. 4. 25.
[Spring] Spring MyBatis + 예제 실습 Spring MyBatis MyBatis : MyBatis는 Java Object와 SQL문 사이의 자동 Mapping기능을 지원하는 ORM Framework이다 MyBatis 특징 - 쉬운 접근성과 코드의 간결함 : 가장 간단한 persistence framework로, XML형태로 서술된 JDBC코드라 생각해도 될 만큼 JDBC의 모든기능을 대부분 제공하면서 복잡한 JDBC의 코드를 걷어내었다. 수동적인 parameter설정과 Query결과에 대한 mapping구문을 제거하였다. - SQL문과 프로그래밍 코드의 분리 : SQL변경이 있을때마다 자바코드를 수정하거나 컴파일 하지 않아도 된다. - 다양한 프로그래밍 언어로 구현가능 : Java, C#, .NET, Ruby 등등 MyBatis Spring .. 2022. 4. 25.
[Spring] Spring FileUpload + 예제 실습 Spring Framework기반 사용자정보 관리 애플리케이션 사용자 등록 시 이미지가 있다면, 같이 등록하며 결과화면으로 출력하기 요구사항 - pom.xml에 파일업로드를 위한 의존성 확인 - 기존 Dto인 User에 이미지를 저장하는 필드 추가 - servlet-context.xml에 파일업로드를 위해 multipartResolver를 추가 - 사용자 정보를 입력받기 위해 regist.jsp에 input태그 추가와 form의 enctype수정 - UserController에서 /regist처리 과정 중 User와 함께 전달된 MultiPartFile을 처리 (전달 된 파일은 resources/upload에 저장되도록 하기) - regist_result.jsp에서 사용자 등록 시 이미지를 등록하였다면 .. 2022. 4. 24.
[Spring] Spring Interceptor /Filter + 예제 실습 Spring Interceptor/Filter 인터셉터( Interceptor ) Interceptor는 HandlerInterceptor를 통해서 컨트롤러에 들어오는 요청 HttpRequest와 컨트롤러가 응답하는 HttpResponse를 가로채는 역할을 한다. 로깅, 모니터링 정보수집, 접근제어처리 등의 실제 Business Logic과는 분리되어 처리해야 하는 기능들을 넣고싶을 때 유용하며, Interceptor는 여러개 설정할 수 있으나 순서에 주의해야 한다. HandlerInterceptor 제공 메서드 HandlerInterceptor method boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object.. 2022. 4. 24.
[Spring] Spring AOP + 예제 실습 Spring AOP AOP란 : AOP는 (Aspect Oriented Programming)의 약자로, 여러 객체에 공통으로 적용할 수 있는 기능을 분리해서 재사용성을 높여주는 프로그래밍 기법이다. AOP는 핵심기능과 공통기능의 구현을 분리함으로써 핵심기능을 구현한 코드의 수정 없이 공통 기능을 적용할 수 있게 만들어준다. AOP방식 스프링이 제공하는 AOP방식은 프록시를 이용한 방식이다. 스프링 AOP는 프록시객체를 자동으로 만들어 실제 객체의 기능을 실행하기 전.후에 공통기능을 호출한다. AOP 주요용어 용어 의미 Advice 언제 공통기능을 핵심로직에 적용할 지를 정의 예) 메서드를 호출하기 전(언제)에 트랜잭션시작(공통기능)기능 적용 JointPoint Advice를 적용가능한 지점(메서드) 스.. 2022. 4. 24.