728x90
이번 주 목표
토비의 스프링 부트
항해 99 정규 과정
GO 로컬 회원가입 API 만들기
오늘 목표
토비의 스프링 부트
항해 99 정규 과정
GO MySQL 연결
오늘 한 것
토비의 스프링 부트
항해 99 정규 과정
오늘 스케줄
아침 - 토비의 스프링 부트
저녁 - GO
1. Mapping
요청을 알맞은 Servlet에 연결하는 작업
2. 서블릿 등록
package tobyspring.helloboot;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory;
import org.springframework.boot.web.server.WebServer;
import java.io.IOException;
public class HellobootApplication {
public static void main(String[] args) {
// 서블릿 컨테이너 띄우기
TomcatServletWebServerFactory serverFactory = new TomcatServletWebServerFactory();
// 익명 클래스, 람다식으로 전환
WebServer webServer = serverFactory.getWebServer(servletContext -> {
servletContext.addServlet("hello", new HttpServlet() {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setStatus(200);
resp.setHeader("Content-Type","text/plain");
resp.getWriter().println("Hello Servlet");
}
// hello로 들어오면 여기서 처리하겠다.
}).addMapping("/hello");
});
webServer.start();
}
}
2. ENUM으로 처리
resp.setStatus(HttpStatus.OK.value());
resp.setHeader(HttpHeaders.CONTENT_TYPE, MediaType.TEXT_PLAIN_VALUE);
3. Parameter 넘기기
package tobyspring.helloboot;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory;
import org.springframework.boot.web.server.WebServer;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import java.io.IOException;
public class HellobootApplication {
public static void main(String[] args) {
// 서블릿 컨테이너 띄우기
TomcatServletWebServerFactory serverFactory = new TomcatServletWebServerFactory();
// 익명 클래스, 람다식으로 전환
WebServer webServer = serverFactory.getWebServer(servletContext -> {
servletContext.addServlet("hello", new HttpServlet() {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String name = req.getParameter("name");
resp.setStatus(HttpStatus.OK.value());
resp.setHeader(HttpHeaders.CONTENT_TYPE, MediaType.TEXT_PLAIN_VALUE);
resp.getWriter().println("Hello " + name);
}
// hello로 들어오면 여기서 처리하겠다.
}).addMapping("/hello");
});
webServer.start();
}
}
4. 프론트 컨트롤러
모든 서블릿에 공통적인 작업을 처리하는 것
ex) 인증, 보안, 다국어 처리 등의 작업 > 자바 Enterprize 개발에 대표적인 패턴
출처 : 토비의 스프링 부트 - 이해와 원리
KPT
Keep
집중하는 것
Problem
-
Try
파이팅
소감
드디어 코어 집중
파이팅
'아카이브 > 항해99 취업 리부트 코스 학습일지' 카테고리의 다른 글
[항해99 취업 리부트 코스 학습일지] 마이크로서비스 아키텍처 구축 🌐 (0) | 2024.03.26 |
---|---|
[항해99 취업 리부트 코스 학습일지] 내배캠 선배님의 5분 자바 특강 (0) | 2024.03.26 |
[항해99 취업 리부트 코스 학습일지] 토비의 스프링부트 🌿 실행 환경 설정 (0) | 2024.03.25 |
[항해99 취업 리부트 코스 학습일지] Job Description (채용 공고) 기반의 어필 포인트 찾기 (0) | 2024.03.25 |
[항해 99 취업 리부트 코스 학습일지] 토비의 스프링 부트 본격적 시작 🌿 (0) | 2024.03.25 |