본문 바로가기
반응형

#spring11

spring interceptor란, spring custom interceptor 라이브러리 만들기, spring custom interceptor 적용 spring interceptor란, spring boot custom interceptor 라이브러리 만들기, spring boot custom interceptor 적용 spring interceptor란? spring interceptor를 한마디로 정의하면 request를 가로채서 추가적인 로직을 수행할 수 있도록 하는 요소입니다. spring에서의 Interceptor가 있을때의 처리방식은 아래 그림과 같습니다. (Handler Interceptor 부분입니다) client에서 웹서버로 호출 dispatcher servlet을 통해 request를 Handler Interceptor로 넘김. Handler Interceptor의 Prehandle 메소드 로직수행후, Handler -> contr.. 2023. 10. 22.
스프링부트 라이브러리 만들기, spring boot auto configuration, 공통 exception 처리 라이브러리 만들기 스프링부트 라이브러리 만들기, spring boot auto configuration, 공통 exception 처리 라이브러리 만들기 배경 최근에, 여러 spring boot 프로젝트를 개발하는 대형프로젝트를 진행하고 있습니다. 그런데, 각 spring boot에서 공통적으로 코드를 사용하는 부분이 있습니다. 예를 들어, exception 처리와 같은 부분입니다. controller쪽에서 exception을 발생시키면 아래와 같은 json 결과를 http response로 보내고, http status 는 500에러를 발생하고자 하였습니다. {"message":"ERROR_INTERNAL","result":null} 이를 처리하기 위해서는 스프링 부트 프로젝트에 spring boot aop를 적용하여 처.. 2023. 10. 19.
spring에서 xml에 등록된 bean 사용하기, org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'xxx' available 문제 해결 spring에서 xml에 등록된 bean 사용하기, org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'xxx' available 문제 해결 참고 : spring bean이란? https://devscb.tistory.com/116 spring에서 xml에 등록된 bean 사용방법 spring에서 xml에 등록된 bean을 사용하려면 아래와 같습니다. 1) bean등록하려는 class 생성 2) xml에 bean 등록 3) bean을 사용하려는 class에서 의존성주입 자세한 방법을 살펴보겠습니다. 1) bean등록하려는 class 생성 일반적인 class파일을 만듭니다. 이 예제에서는 아래와 같은 클래스를 사용해.. 2023. 4. 15.
spring junit에서 autowired 동작하지 않는 현상 해결 spring junit에서 autowired 동작하지 않는 현상 해결 spring framework 에서 junit4 사용하기 1. junit test class 최상단에 아래 내용을 입력해줍니다. ContextConfiguration의 location 에 대한 xml 은 각자의 프로젝트 상황에 맞게 수정이 필요합니다. @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = { "file:src/main/resources/spring/context-*.xml", "file:src/main/resources/spring/*-servlet.xml" }) 2. test하려는 class에 대해서, spring bean이라면 annota.. 2023. 4. 13.
[Spring] Spring에서 Exception 제대로 처리하기, Spring Exception 전역 예외 처리, Spring exception 처리, Spring exception handler, ExceptionHandler, 스프링 예외처리, Spring exception 예외처리, Spring exception Spring에서 Exception 제대로 처리하기, Spring Exception 전역 예외 처리, Spring exception 처리, Spring exception handler, ExceptionHandler, 스프링 예외처리, Spring exception 예외처리, Spring exception Spring에서의 예외처리 방법 Spring에서는 Java에서의 try catch 블록을 사용하는것 외에 예외를 처리할 수 있는 간단한 방법을 제공합니다. 대표적으로 @ExceptionHandler라는 annotation(어노테이션)을 이용하여 예외처리할 수 있습니다. 또한, 이를 프로젝트 전체에 적용하기 위해, @ControllerAdvice라는 annotation 을 사용할 수 있습니다. 이에 대한 .. 2022. 7. 31.
[Spring] Spring boot란?, 스프링부트란, 스프링부트와 스프링의 차이, 스프링부트 실행하기 Spring boot란?, 스프링부트란, 스프링부트와 스프링의 차이, 스프링부트 실행하기 spring boot란? 스프링부트란? 이전에 스프링이 무엇인지에 대해 https://devscb.tistory.com/111?category=1025931 에서 살펴보았었습니다. 웹서버 개발을 쉽게 하기위해 탄생한 프레임워크인데요, 개발하다보니 사람들이 스프링도 불편한점이 있다고 생각하게 되었습니다. 바로 수많은 설정파일을 만들고, 설정해줘야하는 불편함이 있었는데요, 이를 비롯한 여러 불편한점들을 개선하고, 여러 편의기능을 넣어서 스프링 부트가 탄생되었습니다. 스프링 부트를 한마디로 표현한다면 "더 개발하기 쉬운 스프링" 이라 표현할 수 있습니다. spring boot (스프링부트)의 특징 1. 스프링 부트는 독립.. 2022. 7. 22.
[Spring] Spring Framework 기본동작 순서 및 구조, 스프링 프레임워크 동작 및 구조, 스프링 프레임워크 구성요소 Spring Framework 기본동작 순서 및 구조, 스프링 프레임워크 동작 및 구조, 스프링 프레임워크 구성요소 Spring Framework (스프링프레임워크) 구조 Spring Framework (스프링프레임워크)에서의 동작처리를 알아보겠습니다. 정확히는 http request를 처리하는 방식에 대한 기본적인 내용을 설명해보려고 합니다. 먼저 전체적인 흐름은 아래와 같습니다. @startuml actor Client database DB component ServletContainer{ component Spring{ component DispatcherServlet component HandlerMapping component Controller component ViewResolver comp.. 2022. 7. 7.
[Spring] Spring - IoC (Inversion of Control), 스프링 - 제어의 역전이란? Spring - IoC (Inversion of Control), 스프링 - 제어의 역전 스프링의 핵심 기술이자, 많은 참고자료에서 강조되는 것이 바로 IoC (Inversion of Control)라는 기술입니다. IoC가 도대체 무엇이길래 제일 크게 강조하는지 알아보고자 합니다. IoC 뜻 IoC는 Inversion of Control의 줄임말입니다. Inversion은 한국 뜻으로 역전, 전도, 자리바뀜, 뒤집다 등을 의미하며, Control은 제어, 통제, 지배라는 뜻을 의미하니다. 전체 내용을 번역하면 "제어의 역전" 이라고 번역할 수 있습니다. 제어하는 방식이 원래는 어떻길래 스프링에서는 이를 역전시켰다고 했을까요? 일반적으로 소프트웨어 개발을 할때, 프로그램의 제어 흐름을 컨트롤하는것은 개발.. 2022. 7. 6.
[Spring/Java] Java Bean이란, Spring Bean이란, Java bean 유래, Java Beans, 자바빈, 스프링빈, 자바 빈, 스프링 빈 [Spring/Java] Java Bean이란, Spring Bean이란, Java bean 유래, Java Beans 여러 spring 관련 글들을 보면 Bean(빈) 이라는 용어가 등장합니다. 이게 무엇인지 알아보겠습니다. Bean 이름의 유래 Bean이라는 용어는 한국어로 콩이라는 뜻입니다. 갑자기 왠 콩? 일까 싶습니다. 먼저 Java라는 프로그래밍 언어는 인도네시아 Java 섬 커피를 즐겨마시던 개발자에 의해 만들어지게 되었습니다. 그리고 Java관련된 용어로 커피관련된 용어를 사용했지요. 그 중에서 Java 프로그램의 구성요소를 커피콩을 비유해서 Bean이라고 칭했습니다. 또한, Bean을 항아리에 담겠다 라고 해서 최종 빌드된 패키징파일은 .jar파일로 생성되게 됩니다. 마지막으로 재미있는 .. 2022. 7. 4.
[Spring] Spring Framework란? 스프링 프레임워크란? Spring Framework란? 스프링 프레임워크란? Spring Framework란? spring framework를 한마디로 정의하면 "오픈소스 자바 웹 프레임워크" 입니다. 뜻을 하나씩 살펴보자면, 오픈소스 (오픈소스 소프트웨어): 소스가 공개되어있어, 누구나 자유롭게 확인, 수정, 배포할 수 있는 소스입니다. 자바 : 썬 마이크로시스템즈의 제임스 고슬링 주도로 개발된 객체 지향적 프로그래밍 언어입니다. 웹 (웹 개발) : 인터넷이나 인트라넷을 위한 웹사이트를 개발하는것을 의미합니다. 프레임워크 : 복잡한 문제를 해결하거나 서술하는 데 사용되는 기본 개념 구조/틀입니다. 이를 다시 한 문장으로 표현하자면, Java로 웹사이트를 쉽고 빠르게 개발하기 위한 틀이라고 생각할 수 있습니다. spring은.. 2022. 6. 22.
dependency injection이란, DI란, 의존성 주입이란 dependency injection이란, DI란, 의존성 주입이란 spring framework를 공부할때 dependency injection(DI)를 많이들 들어보셨을 것입니다. 혹은 SOLID원칙을 배울때도 D부분이 dependency inversion principle이기도 하지요. dependency injection, 한국어로는 의존성 주입이 무엇인지 알아보겠습니다. 먼저 용어 뜻을 분해해서 dependecny 와 injection 이 무엇인지 살펴보겠습니다. 1. dependency란? (의존성이란) 의존성이 있다라는 것은 한 클래스(A)에서 다른 클래스(B)를 사용한다라고 이해하면 됩니다. 의존성이 있다면 B가 변경이 되었을때, A도 변경을 해야하며, 이를 A가 B에 의존해 있다라고 (d.. 2021. 12. 22.
반응형