BackEnd(Java)/Spring Boot(20)
-
FrontController 패턴에 대해서 알아보자
Spring을 통하여 개발을 할 때 MVC 패턴을 적용하여 layer를 나누어서 개발을 진행한다.(그림 1 참고) 그러나, MVC 패턴에서의 컨트롤러의 단점이 존재한다. 단점 1. 포워드 중복 : View layer로 이동하는 코드가 항상 중복 호출된다. 클래스를 만들어 공통화해도 되지만, 결국 호출하는 코드가 각각 들어가게 된다. RequestDispatcher dispatcher = request.getRequestDispatcher(viewPath); dispatcher.forward(request, response); 2. ViewPath 중복 : jsp 경로가 변경되면 전체 코드를 다 변경해줘야 한다. String viewPath = "/WEB-INF/views/new-form.jsp"; 3. ..
2022.06.11 -
웹서버 / WAS 서버 차이
스프링을 제대로 공부하기 위해서 인프런의 김영한님 강의를 구매하였고 강의 내용을 습득 및 정리하기 위해 글을 포스팅할 예정입니다. 강의에서 제공해주신 PDF + 구글 검색을 참고하여 시리즈를 진행하겠습니다. 자 그럼, 같이 스프링 공부하러 가보시죠 ! 😁😁 웹 - HTTP 웹에서는 HTTP 프로토콜 기반으로 통신합니다.(웹 통신의 큰 흐름 참고.) 서버 클라이언트 혹은 서버 서버간의 데이터를 전송할 때 HTTP 메시지에 모든것을 전송합니다.(HTML,TEXT, JSON, XML 등...) 웹 서버(Web Server) 웹서버는 HTTP 기반으로 동작하는 서버 .정적 리소스(HTML, CSS, JS, 이미지 등..)를 제공 ex) NGINX, APACHE 웹 애플리케이션 서버(WAS) WAS 서버도 HTT..
2022.06.01 -
누구나 쉽게 AWS와 Spring Boot로 서버 구축&배포 해보기 - 3편
3편에서는 AWS RDS를 설치하고 테스트를 해보겠습니다. AWS 데이터베이스 설치, 모니터링, 알람, 백업, HA 구성 등의 작업을 모두 지원하는 관리형 서비스인 RDS를 지원합니다. 실제 DB와 관련된 전반적인 작업들을 관리해주며 개발자들은 개발에 집중할 수 있게 지원하는 서비스입니다. 저는 RDS에 Mysql DB를 설치를 할 예정입니다.(DB는 본인의 개발환경에 맞게 선택해주시면 됩니다.) RDS 설치하러 가봅시다.😎😎 1. RDS 인스턴스 생성하기 RDS 서비스에 접속하여 데이터베이스 생성을 클릭 후 DB와 버전을 선택합니다. 참고로, Amazone Aurora가 AWS에 제공하는 DB인데 MySQL과 PostgreSQL을 클라우드 기반에 맞게 재구성한 DB입니다. 성능도 RDS MySQL 대비..
2022.05.13 -
누구나 쉽게 AWS와 Spring Boot로 서버 구축&배포 해보기 - 2편
2편에서는 1편에서 구축한 EC2 서버로 접속을 해보겠습니다. 저는 OS가 윈도우라 Putty를 사용하여 접속해보겠습니다. (Mac or Linux 사용하시는 분들은 터미널에 접속) Putty 설치 후 puttygen.exe 파일을 실행합니다. putty는 pem키로 사용이 안 되며 pem 키를 ppk 파일로 변환을 해야 합니다. puttygen을 사용하여 pem -> ppk로 변환하는 과정을 진행합니다. 그림 1처럼 메뉴바에서 Conversions > Import Key를 선택합니다. EC2 생성할 때 내려받은 pem키를 선택하여 import 합니다. import를 하면 아래 그림 2의 Save Private Key 버튼을 클릭합니다. 예(Y)를 선택 후 파일 이름 입력 후 ppk 파일을 저장합니다. ..
2022.05.07 -
누구나 쉽게 AWS와 Spring Boot로 서버 구축&배포 해보기 - 1편
먼저, 이 글은 SpringBoot를 사용하여 로컬 환경에서 개발하다가 나도 한번 요즘 핫한 AWS(Amazon Web Service)를 사용해서 서버 구축 및 배포해볼까?라는 생각이 조금이나마 있으신 분들이나 혹은 구글링 하면서 스스로 하시다가 막혀서 중간에 포기하신 분들 혹은 관심 있는 분들에게 AWS를 활용하여 쉽게 서버 구축 및 배포를 할 수 있도록 가이드를 제공할 예정입니다. 저의 개발환경은 아래와 같습니다 개발환경 Spring Boot 2.6.3 JPA(Hibernate) JAVA 11 Mysql Spring Security 저희는 AWS EC2와 RDS를 사용하여 서버를 구축할 예정입니다.(참고 : https://pearlluck.tistory.com/83) (쉽게 설명하자면 EC2는 서버라..
2022.05.04 -
JWT 토큰을 통한 로그인 기능 구현
참고자료 https://llshl.tistory.com/28 https://webfirewood.tistory.com/115
2022.04.26