728x90

spring 9

JPA에서 트랜젝션

1. 트랜잭션 기본 개념JPA에서 모든 데이터 변경 작업(CREATE, UPDATE, DELETE) 은 반드시 트랜잭션 안에서 이루어져야 해.트랜잭션 생명주기시작: tx.begin();작업 수행: persist, find, remove, 등.성공 시 커밋: tx.commit();오류 시 롤백: tx.rollback(); 2. 매번 트랜잭션을 직접 만드는 방식 (지금처럼)EntityManager 를 사용할 때 매 작업마다 트랜잭션을 시작하고 종료해야 해.이 방식은 단순한 자바 SE 환경 (Spring 없이 순수 JPA) 에서 많이 씀.예시:EntityTransaction tx = em.getTransaction();tx.begin();try { // 작업 em.persist(...); tx..

JPA 2025.04.24

Spring의 ApplicationContext: IoC 컨테이너와 빈 관리

Spring Framework의 핵심 개념 중 하나는 IoC (Inversion of Control) 입니다. IoC는 객체의 생성과 의존성 관리를 Spring 컨테이너가 담당하는 원칙으로, 개발자는 객체 간의 의존성을 직접 관리하는 대신 Spring이 이를 관리하게 됩니다. 이때, Spring에서 중요한 역할을 하는 것이 바로 ApplicationContext 입니다.ApplicationContext는 Spring의 IoC 컨테이너로, 애플리케이션에서 사용되는 객체들(빈)을 관리하고, 객체 간의 의존성을 주입하며, 애플리케이션의 설정 정보를 로드하는 역할을 합니다. ApplicationContext를 통해 Spring은 객체들을 생성하고 관리하며, 의존성 주입(Dependency Injection)을 ..

Spring 2025.03.23

getBean: IoC 컨테이너에서 빈을 조회하는 방법

Spring Framework의 핵심 개념 중 하나는 IoC (Inversion of Control) 입니다. IoC는 객체의 생성과 의존성 관리를 Spring 컨테이너가 담당하는 원칙으로, 개발자는 객체 간의 의존성을 직접 관리하는 대신 Spring이 이를 관리하게 됩니다. 이때 getBean 메서드는 Spring IoC 컨테이너에서 관리되는 객체인 빈(Bean) 을 가져오는 중요한 역할을 합니다.이번 글에서는 getBean 메서드의 사용법과 원리에 대해 자세히 살펴보겠습니다.1. getBean 메서드란?getBean은 Spring IoC 컨테이너에서 관리되는 빈(Bean)을 가져오는 메서드입니다. Spring에서는 객체를 빈이라고 부르며, 이 빈들은 ApplicationContext나 BeanFact..

Spring 2025.03.23

@Bean의 의미와 사용 방법

목적과 기능@Bean은 메소드 레벨 어노테이션으로, 해당 메소드가 Spring 컨테이너에 의해 관리될 빈을 생성한다는 것을 선언합니다. XML 설정의 요소와 직접적으로 대응됩니다.주요 특징빈 정의: @Bean으로 어노테이션된 메소드가 반환하는 객체는 Spring 애플리케이션 컨텍스트에 빈으로 등록됩니다.설정 컨텍스트: @Bean 메소드는 주로 @Configuration 어노테이션이 붙은 클래스 내에서 선언됩니다. 이는 해당 클래스가 빈 정의의 소스임을 나타냅니다.커스터마이제이션: 프로그래밍 방식으로 빈을 생성하고 구성할 수 있어, 인스턴스화와 초기화 과정을 세밀하게 제어할 수 있습니다.사용법과 이점의존성 주입@Bean 메소드는 매개변수를 받을 수 있어, 빈 간의 의존성을 정의할 수 있습니다.@Bean ..

SpringBoot 2025.03.05

Spring에서의 예외 처리: @ExceptionHandler 활용

웹 애플리케이션을 개발할 때, 예외 처리는 매우 중요한 부분입니다. 사용자에게 발생한 오류에 대한 적절한 메시지를 제공하고, 시스템의 안정성을 높이기 위해 예외 처리는 필수적입니다. Spring 프레임워크는 예외 처리를 위한 여러 가지 방법을 제공하며, 그 중 하나가 바로 @ExceptionHandler입니다.이 글에서는 @ExceptionHandler의 사용법과 활용법에 대해 자세히 알아보겠습니다.1. @ExceptionHandler란?@ExceptionHandler는 Spring MVC에서 발생하는 예외를 처리하는 데 사용되는 어노테이션입니다. 이 어노테이션을 사용하면, 특정 예외가 발생했을 때 이를 처리할 수 있는 메서드를 지정할 수 있습니다.예를 들어, @ExceptionHandler를 사용하여 ..

Spring 2025.02.20

Spring @RequestParam 완벽 가이드

Spring @RequestParam 완벽 가이드Spring Boot를 활용하여 웹 애플리케이션을 개발할 때, 클라이언트로부터 데이터를 받는 방법 중 하나가 @RequestParam 어노테이션입니다. 이번 포스트에서는 @RequestParam의 사용법과 다양한 옵션을 살펴보겠습니다.1. @RequestParam이란?@RequestParam은 HTTP 요청의 쿼리 파라미터(query parameter)를 컨트롤러 메서드의 파라미터로 매핑할 때 사용됩니다. 주로 GET 요청에서 많이 활용되지만, POST, PUT 등에서도 사용할 수 있습니다.2. 기본 사용법기본적으로 @RequestParam을 사용하면, 클라이언트가 보낸 특정 파라미터 값을 컨트롤러의 메서드에서 사용할 수 있습니다.@RestControlle..

Spring 2025.02.20

Spring @ModelAttribute 어노테이션 완벽 가이드

Spring MVC를 사용하다 보면 @ModelAttribute 어노테이션을 자주 접하게 됩니다. 하지만 이 어노테이션의 정확한 역할과 활용법을 제대로 이해하지 못한 채 사용하는 경우도 많습니다. 이번 글에서는 @ModelAttribute가 무엇인지, 언제 사용하는지, 그리고 어떤 장점이 있는지 자세히 알아보겠습니다.@ModelAttribute란?@ModelAttribute는 Spring MVC에서 모델 데이터를 바인딩하고 초기화하는 데 사용되는 어노테이션입니다. 주로 컨트롤러의 메서드 파라미터나 메서드 자체에 적용되어 다음과 같은 역할을 수행합니다.요청 데이터 바인딩: 클라이언트에서 전달된 요청 데이터를 자동으로 객체에 매핑합니다.모델 데이터 추가: 뷰에서 사용할 수 있도록 모델에 데이터를 추가합니다...

Spring 2025.02.20

웹 개발 역사

1. CGI (Common Gateway Interface) – 1990년대 초반개념웹 서버가 동적인 콘텐츠(예: 사용자 입력에 따라 변하는 웹 페이지)를 제공하기 위해 사용한 초기 기술.HTML 문서만으로는 사용자 입력을 처리할 수 없으므로, 웹 서버가 프로그램을 실행하고 그 결과를 웹 페이지로 반환하는 방식.주로 Perl, C, Python, Shell Script 같은 언어로 작성됨.작동 방식사용자가 웹 페이지에서 데이터를 입력하고 제출하면,웹 서버가 CGI 프로그램을 실행하고,결과를 HTML로 변환한 후, 브라우저에 전송.CGI 스크립트 예제 (Perl)#!/usr/bin/perlprint "Content-type: text/html\n\n";print "";print "Hello, CGI!";p..

Web History 2025.02.12

1. Tomcat 설정 관련

목차Tomcat 서버 설정 가이드: 설치부터 성능 최적화까지Apache Tomcat은 Java 기반의 웹 애플리케이션을 호스팅하기 위한 오픈소스 웹 서버이자 서블릿 컨테이너입니다. Java EE(Servlet, JSP 등) 기반의 웹 애플리케이션을 실행하는 데 많이 사용됩니다. 이 글에서는 Tomcat 서버 설치부터 시작해, 서버 설정 파일, 성능 최적화, 보안 설정까지 자세히 설명합니다.1. Tomcat 설치 방법Tomcat을 설치하는 방법은 매우 간단합니다. Tomcat 공식 웹사이트에서 제공하는 설치 패키지를 다운로드하여 설치할 수 있습니다.1.1 Tomcat 다운로드Tomcat 공식 웹사이트(https://tomcat.apache.org)에 접속합니다."Download" 페이지로 이동하여 최신 버..

Spring 2025.01.20
728x90