springboot 4

[Spring] Spring은 왜 사용하는걸까? + 공부할 때 꿀팁

안녕하세요 오랜만에 글을 올립니다.그동안 이런저런 공부를 좀 하다가 스프링을 사용하는 근본적인 이유를 좀 정리했습니다. 단순히 Spring을 많이 사용하기 때문에라는 말이 아닌 Spring이라는 것이 어떤 이유로 많이 사용되는지에 대한 것을 좀 정리해보려고 합니다. 딱히 공부 방법이 궁금하지 않으시면 이 부분은 넘어가셔도 됩니다.더보기더보기Spring을 공부하시려고 책을 찾다보면 토비의 스프링이라는 책을 들어보셨을 겁니다. 저도 예전에 어떤 개발자분이 Spring 개발자라면 무조건 한 번은 완독 해야 한다 하시는 것을 봐서 실제로 저도 토비의 스프링으로 공부를 했습니다.이 책의 장점은 여러가지 궁금해할 만한 점들을 전부 세세하게 설명해 주는 것입니다. 구글링도 좋은 참고 자료이지만 대부분 단편적인 내용..

[Spring] 웹소켓 - Web Socket with STOMP + Spring Security + JWT

오늘은 웹소켓을 구현해보도록 하겠습니다.STOMP일단 웹소켓 환경으로 STOMP를 활용할것입니다.STOMP는 Simple/Streaming Text Orientated Messaging Protocol의 줄임말로 메시지 프로토콜입니다.다르게 말하면, 어떤 형식으로 메시지를 주고받을지 정의하는 하나의 규약이라고 할 수 있습니다. STOMP를 사용하는 이유로는 웹소켓은 양방향 통신 연결 즉, 파이프만 구성하고 이 파이프를 통해서 데이터 혹은 메시지를 누구에게, 어떻게 전달해야 할지는 개발자가 직접 메시지 형식을 일일이 설계하고 파싱해야합니다.하지만 STOMP를 사용한다면 이러한 메시지 형식을 개발자가 직접 설계하는 것이 아닌 표준화합니다. 그래서 원하는 메시지를 명확한 형식에 맞춰서 간단하게 설정할 수 있다..

[Spring] - DI (Dependency Injection) - 1

이번 포스트에서는 Spring의 DI에 대해서 알아보려고 합니다.DI란 의존성 주입이라는 뜻으로, 객체 간의 의존 관계를 외부에서 설정해 주는 것 일단 스프링을 공부하기 시작하면 정말 많이 보이는 단어인데, 객체 간의 의존 관계를 외부에서 설정해 준다는 것이 처음에 보면 좀 이해하기 어렵습니다. 스프링에 대해서 공부하면서 DI를 통해 결합도를 낮추고 객체 지향 원칙을 지향하여 유지보수성을 높인다는 이야기를 들어봤을 텐데요근데 스프링을 처음 접하는 사람 입장에서는 이런 이야기들이 뜬구름 잡는 이야기라고 느낄 텐데, 이 포스팅에서는 내가 궁금했던 부분들을 세세하게 이야기하고자 합니다. 의존 관계스프링은 자바를 기본적으로 사용하는데 자바는 객체 지향 언어입니다. 객체 지향에서 정말 중요한 개념 중 하나가 단일..

[Spring] Spring Security와 JWT를 활용한 인증, 인가 구현

최근에 아는 지인과 좀 더 깊고 제대로 이해하기 위해서 Spring 공부를 시작했는데, 이론 공부만 하기 뭐해서 프로젝트도 같이 시작했습니다.그래서 기록도 좀 할 겸 블로그에 개발 기록을 올리려고 하는데 무언가 공모전에 내거나 서비스를 만들기 위해서 하는 것이 아닌 공부를 위해서 하는 프로젝트이기 때문에 기능 하나하나마다 여러 가지를 시도와 트러블 슈팅들을 기록해보고자 합니다. 일단 첫 단추로 Spring Security입니다.아마 Spring 개발자라면 회원가입이나 로그인 기능을 구현하고자 할 때 한 번쯤은 들어봤을 법한 기술인데, 사실상 Spring을 사용해서 인증, 인가를 구현할 때 대다수가 사용하는 프레임워크입니다.그만큼 호환도 잘되어있고, 사실상 스프링 기반 애플리케이션의 보안을 위한 표준이라고..