Java Servlet @WebServlet 어노테이션의 구성과 활용
@WebServlet 어노테이션의 구조 분석
Servlet 3.0 규격부터 도입된 @WebServlet 어노테이션은 과거 web.xml 배포 서술자에서 수행하던 서블릿 등록 및 매핑 작업을 소스 코드 레벨에서 직접 처리할 수 있게 해줍니다. 이 어노테이션은 jakarta.servlet.annotation 패키지에 정의되어 있으며, 주요 속성은 다음과 같습니다.
package jakarta.servlet.annotation;
import j ...
8월 8일 07:07에 게시됨
JSP 내장 객체 이해하기
JSP(JavaServer Pages)는 웹 애플리케이션 개발을 위한 서버 측 스크립팅 언어로, 동적인 웹 페이지를 쉽게 생성할 수 있도록 지원합니다. JSP 컨테이너는 각 JSP 페이지마다 여러 개의 미리 정의된 Java 객체를 제공하는데, 이를 내장 객체(Implicit Objects)라고 합니다. 개발자는 이러한 내장 객체를 별도의 선언 없이 즉시 사용할 수 있어 개발 생산성을 높일 수 있습 ...
8월 4일 14:21에 게시됨
SMBMS 슈퍼마켓 관리 시스템의 역할 목록 조회 기능 구현
1. RoleDao 인터페이스 정의
데이터베이스에서 역할(Role) 정보를 가져오기 위한 DAO 인터페이스를 작성합니다.
package com.thhh.dao.role;
import com.thhh.pojo.Role;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.List;
public interface RoleDao {
// 시스템 내의 모든 역할 목록을 조회하는 메서드
List<Role> fetc ...
8월 3일 19:34에 게시됨
Java Web 애플리케이션 리스너(Listener) 활용법
웹 애플리케이션에서 리스너는 특정 이벤트가 발생했을 때 자동으로 코드를 실행하게 하는 컴포넌트입니다. Application, Session, Request 객체가 생성되거나 소멸될 때, 혹은 속성이 추가, 수정, 삭제될 때 리스너가 작동합니다. 이러한 리스너는 웹 애플리케이션의 시작과 함께 초기화되며, 애플리케이션이 종료될 때 소멸됩니다. 주로 애플리케이션 구동 시 필요한 초 ...
7월 27일 15:46에 게시됨
MVC 아키텍처 기반 백엔드 데이터 인터페이스 구축 전략
이 문서는 웹 애플리케이션의 핵심 요소인 백엔드 데이터 인터페이스를 MVC(Model-View-Controller) 디자인 패턴을 활용하여 구현하는 실질적인 접근 방식을 다룹니다. 모델, 뷰, 컨트롤러 각 구성 요소의 역할과 구현 방법을 심층적으로 분석하고, DAO(Data Access Object) 패턴을 통한 데이터베이스 작업 최적화, 서블릿을 이용한 HTTP 요청 처리, 그리고 JSON 형식의 응 ...
7월 25일 01:06에 게시됨
JSP 데이터베이스 연동 개발 가이드
데이터베이스에 정보 추가하기
JSP 페이지에서 사용자가 입력한 정보를 MySQL 데이터베이스에 저장하는 방법은 기본적으로 간단합니다. JSP 페이지에 form 태그를 추가하고, action 속성에는 데이터베이스와 상호작용할 서블릿의 주소를, method 속성에는 get 또는 post 중 하나를 선택하여 설정합니다. 방식은 두 가지가 있는데, get 방식은 데이터가 주소 표시줄에 노출 ...
7월 22일 03:42에 게시됨
ServletContextListener 인터페이스 완벽 가이드
서론
ServletContextListener는 웹 애플리케이션의 생명주기를 관리하는 중요한 리스너 인터페이스입니다. 이 인터페이스를 사용하면 서블릿 컨테이너가 시작되거나 종료될 때 특정 코드를 실행할 수 있습니다. 본 글에서는 ServletContextListener의 구조와 활용 방법, 그리고 실제 사용 사례를詳細히 다루겠습니다.
ServletContextListener란?
ServletContextListener ...
7월 17일 23:25에 게시됨
필터 체인 디자인 패턴 구현
필터 체인 패턴은 요청을 처리하기 전후에 다양한 필터를 순차적으로 적용하여 처리 흐름을 제어하는 디자인 패턴이다. 이 패턴은 여러 개의 필터를 연결하고, 지정된 순서대로 실행되도록 구성한다.
기본적인 구성 요소는 다음과 같다:
FilterChain 인터페이스: 모든 필터가 구현해야 하는 공통 인터페이스
MainFilterProcessor: 필터들을 관리하고 순차적으로 호출 ...
7월 16일 19:48에 게시됨
Java 웹 MVC 프레임워크: 요청 파라미터 바인딩 구현
이전 단계에서는 기본적인 웹 프레임워크의 토대를 마련했습니다. 이제 사용자 요청에 포함된 매개변수를 백엔드 컨트롤러 메서드로 어떻게 전달하고 매핑할지에 대해 살펴보겠습니다. 이는 웹 애플리케이션에서 사용자 입력을 처리하는 데 필수적인 기능입니다.
1. 매개변수 매핑을 위한 사용자 정의 어노테이션 정의
메서드 매개변수에 프론트엔드 파라미터 이 ...
7월 14일 20:59에 게시됨
Servlet 3.0 비동기 처리(Asynchronous Processing) 심층 가이드
Servlet 3.0 비동기 처리 개요
기존의 Servlet 모델(3.0 이전)에서는 클라이언트의 요청이 들어오면 서블릿 컨테이너가 관리하는 스레드 풀에서 스레드 하나를 할당하여 해당 요청을 처음부터 끝까지 처리했습니다. 이 방식은 비즈니스 로직이 길어지거나 I/O 작업이 지연될 경우, 스레드가 응답을 보낼 때까지 차단(Blocking) 상태로 유지되어 스레드 풀이 고갈되는 문제 ...
7월 12일 16:11에 게시됨