스프링

Java/Spring

[Spring] 서블릿(servlet)에 대해 알아보자

1️⃣ 서블릿이란? 자바 서블릿은 자바를 사용하여 웹페이지를 동적으로 생성하는 서버측 프로그램 혹은 그 사양을 말하며, 흔히 "서블릿"이라 불린다. 자바 서블릿은 웹 서버의 성능을 향상하기 위해 사용되는 자바 클래스의 일종이다. 🔹 웹 애플리케이션 서버를 직접 구현하면? 서버에서는 어떤 업무를 처리해야 할까? 서버 TCP/IP 연결 대기, 소켓 연결 HTTP 요청 메시지를 파싱해서 읽기 POST 방식, /save URL 인지 Content-Type 확인 HTTP 메시지 바디 내용 파싱 username, age 데이터를 사용할 수 있게 파싱 저장 프로세스 실행 비즈니스 로직 실행 데이터베이스에 저장 요청 HTTP 응답 메시지 생성 시작 HTTP 시작 라인 생성 Header 생성 메시지 바디에 HTML 생성..

Java/Spring

[Spring] 타임리프(Thymeleaf)에 대해 알아보자!

1️⃣ 타임리프(Thymeleaf) 타임리프는 스프링 부트에서 공식적으로 지원하는 View 템플릿 엔진이다. 컨트롤러가 전달하는 데이터를 이용해 동적으로 화면을 구성해 준다. 🔹 타임리프 대표적인 특징 JSP와 달리 Thtmeleaf 문서는 HTML 확장자를 가지고 있어 서버상에서 동작하지 않아도 파일의 내용을 확인할 수 있다. 순수 HTML 구조를 유지한다. 따라서 Natural Template이라고도 불린다. 화면 구성을 서버 가동 없이 쉽게 파악할 수 있기 때문에 개발에 용이하다. 2️⃣ 타임리프 사용 🔹 라이브러리 추가 타임리프 사용을 위해 build.gradle에 의존성을 추가해야 한다. implementation 'org.springframework.boot:spring-boot-starter..

Java/Spring

[Spring] 비즈니스 로직을 처리하는 패턴

⚙ 트랜잭션 스크립트 패턴 vs 도메인 모델 패턴 🔗 트랜잭션 스크립트 패턴이란? 하나의 트랜잭션으로 구성된 로직을 단일 함수 또는 단일 스크립트에서 처리하는 구조 Entity에는 비즈니스 로직이 거의 없고, Service Layer에서 대부분의 비즈니스를 처리하는 것 🔗 도메인 모델 패턴이란? Entity에서 비즈니스 로직을 가지고 객체 지향의 특성을 적극 활용하는 것 대부분의 비즈니스 로직이 Entity 안에 구성되어 있다. Service Layer는 Entity에 필요한 역할을 위임하는 역할을 함 🔗 장단점 패턴명 트랜잭션 스크립트 도메인 모델 장점 - 구현 방법의 단순함 - 얼마나 모듈화를 잘하느냐에 따라 높은 효율을 낼 수 있음. - 객체 지향에 기반한 재사용성, 확장성, 유지 보수의 편리함 단..

Java/Spring

[Spring] Model 객체와 @ModelAttribute 어노테이션

해당 게시글은 김영한님 MVC 강의 1편을 듣고 작성한 게시글입니다! 1️⃣ Model 객체란? Model 객체는 Controller에서 생성된 데이터를 담아 View로 전달할 때 사용하는 객체이다. MVC 패턴에서 Model의 역할을 수행한다. 2️⃣ @RequestParam 어노테이션 @ModelAttribute를 알아보기 전에 @RequestParam에 대해 알아보자. @PostMapping("/add") public String addItemV1(@RequestParam String itemName, @RequestParam int price, @RequestParam Integer quantity, Model model){ Item item = new Item(); item.setItemName..

당찬 뱁새
'스프링' 태그의 글 목록 (3 Page)