목록Develop (16)
Dazzling 개발 노트
스프링 프레임워크에서 제공하는 @Transactional 어노테이션은 데이터의 일관성과 무결성을 유지하기 위해 트랜잭션을 선언적으로 관리하는 강력한 메커니즘을 제공한다. 트랜잭션(Transaction)이란? 트랜잭션은 데이터베이스의 상태를 변화시키는 하나의 작업 단위로, 여러 작업들이 모두 성공적으로 완료되거나, 하나라도 실패할 경우 전체 작업이 취소(롤백)되는 것을 보장한다. 트랜잭션은 일반적으로 ACID(Atomicity, Consistency, Isolation, Durability) 속성을 만족해야 한다. @Transactional 어노테이션의 역할 @Transactional 어노테이션은 메소드나 클래스 레벨에 적용되어, 해당 범위의 실행을 하나의 트랜잭션으로 묶는다. 이 어노테이션을 사용함으로써..
스프링 프레임워크에서 @ResponseStatus 어노테이션은 컨트롤러 메서드나 예외 클래스에 적용되어 HTTP 응답의 상태 코드를 명시적으로 지정한다. 이 어노테이션을 사용함으로써 개발자는 특정 조건에서 원하는 HTTP 상태 코드를 클라이언트에게 반환할 수 있다. 다음은 @ResponseStatus와 함께 자주 사용되는 몇 가지 HTTP 상태 코드와 그 특징들이다. 200 OK 성공적인 요청과 응답을 나타낸다. @ResponseStatus(HttpStatus.OK)로 명시할 수 있으며, 일반적으로 조회 작업(GET 요청)이 성공적으로 완료되었을 때 사용된다. 201 Created 새로운 리소스가 성공적으로 생성되었음을 나타낸다. @ResponseStatus(HttpStatus.CREATED)를 사용하여..
Spring MVC는 Java 기반 웹 개발을 위한 강력한 프레임워크로, Model-View-Controller(MVC) 패턴에 기반하여 웹 애플리케이션의 구조를 체계적으로 구성한다. 이 프레임워크는 웹 애플리케이션의 개발과 유지보수를 용이하게 만들어 준다. Spring MVC의 핵심 개념 Model-View-Controller(MVC) 패턴 Model: 애플리케이션의 데이터와 비즈니스 로직. 데이터의 저장, 수정, 삭제 같은 기능을 담당하며, 상태의 변경을 View와 Controller에 알린다. View: 사용자에게 정보를 표시. HTML, JSP와 같은 웹 페이지로 구성되며, 사용자의 입력을 받아 Controller에 전달한다. Controller: 사용자의 입력과 이벤트를 처리. Model을 업데..
1. Spring Security 스프링 기반의 애플리케이션의 보안(인증과 권한)을 담당하는 프레임워크 필터(Filter)를 기반으로 동작해 스프링 MVC와 분리되어 관리 및 동작한다. 필터(Filter) Dispatcher Servlet으로 가기 전에 적용되어 가장 먼저 URL 요청을 받지만, Interceptor는 Dispatcher와 Controller 사이에 위치한다. Client (Request) → Filter → DispatcherServlet → Interceptor → Controller 관련 용어 Principal : 접근 주체 보호된 대상에 접근하는 유저 Authentication : 인증 증명 Authorization : 인가 권한 부여, 허가 Role : 권한 인증된 주체가 애플리..
1. Spring Boot 프로젝트 생성 https://start.spring.io/ 의존성까지 추가한 후에 Generate 클릭 시 압축파일이 다운된다. 압축을 해제한다. 2. Intelij에서 다운받은 파일의 경로를 Open 한다. 프로젝트가 정상적으로 열린 경우, 위와 같은 directory를 확인할 수 있다. 3. 프로젝트 실행 jdk를 선택한 후 intelij에서 설정 준비가 완료되면 src > main > java 내에 Application.java 파일을 실행할 수 있게 된다. 초록색 실행 버튼을 눌러 프로젝트를 실행한다. 4. 프로젝트 실행 확인 프로젝트가 정상적으로 실행되면 아래와 같은 콘솔을 확인할 수 있다. 8080포트를 통해 확인한다. 번외). 프로젝트 실행 시 오류 발생 아래와 같..
Port 0000 was already in use는 자주 발생하는 오류 중 하나이다. 사용중인 포트를 종료하고 다시 시작해주면 된다. Windows # 사용중인 포트의 PID 확인 netstat -ano | findstr 8080 # 사용중인 포트를 PID로 종료시키기 taskkill /F /pid 4460 # 액세스가 거부되는 경우 cmd를 관리자 권한으로 열어서 실행 Mac lsof -i tcp:8080 sudo kill -9 PID명
프레임워크란? 웹 개발에서 프레임워크는 어떠한 목적을 쉽게 달성할 수 있도록 해당 목적과 관련된 코드의 뼈대를 미리 만들어둔 것을 의미한다. 즉, 특정 종류의 소프트웨어를 개발할 때 사용할 수 있는 재사용 가능한 표준 방법을 제공하는 코드의 집합이다. 개발자가 소프트웨어나 애플리케이션을 더 빠르게, 효율적으로 개발할 수 있도록 기본적인 구조를 제공한다. 스프링(Spring)이란? 스프링은 자바 플랫폼을 위한 오픈 소스 애플리케이션 프레임워크이다. 엔터프라이즈 급의 애플리케이션을 쉽게 개발할 수 있도록 다양한 기능을 제공한다. 이는 강력한 의존성 주입(Dependency Injection)을 기반으로 하여, 애플리케이션의 구성 요소들 간의 결합도를 낮추고, 유지보수 및 테스트가 용이한 애플리케이션을 구축할..