전체 글

개발 공부 정리
☘️ Spring

[Spring] Day70 - 예외 처리 페이지

예외 처리 페이지 페이지의 내용을 처리하다가 예외가 발생했을 때 별다른 설정이 없다면 예외의 내용을 그대로 클라이언트에게 보여지게 됩니다. 예외 처리는 다양한 방식으로 구현할 수 있으며 JSP 방식으로는 대표적인 두 가지 방식이 있습니다. Java 로직으로 예외 처리 JSTL을 활용하여 NULL 처리 기존 JSP 방식으로 처리한 내용을 Spring 방식으로 변환할 수 있습니다. Spring 방식 예외 처리 구현 Spring에서 예외를 처리하고 특정 페이지로 떠넘기려면 ExceptionResolver를 사용할 수 있습니다. ExceptionResolver는 Spring의 예외 처리 중 하나로, 예외가 발생할 때 어떤 예외를 처리할 클래스 및 예외가 발생했을 때 사용자를 특정 페이지로 리디렉션하도록 설정할 ..

☘️ Spring

[Spring] Day69 - 파일 업로드

파일 업로드 1. pom.xml 설정 프로젝트 pom.xml에 commons-fileupload 의존성을 추가합니다. ... commons-fileupload commons-fileupload 1.3.1 ... pom.xml 2. 에 속성 추가 내부에 enctype="multipart/form-data"를 추가하고 input type="file"을 추가합니다. 메인으로 돌아가기 insertBoard.jsp 3. BoardVO 멤버변수 추가 package com.spring.biz.board; import org.springframework.web.multipart.MultipartFile; public class BoardVO { private int bid; private String title; ....

☘️ Spring

[Spring] day68 - JDBC Template

JDBC Template JdbcTemplate은 스프링 프레임워크에서 제공하는 JDBC(Java Database Connectivity) 작업을 간소화하고 개발자가 더 효율적으로 데이터베이스와 상호작용할 수 있도록 도와주는 클래스입니다. JdbcTemplate은 스프링의 JDBC 추상화 계층 중 하나로, JDBC를 사용하여 데이터베이스와 상호작용하는 코드를 더 간결하게 작성할 수 있도록 지원합니다. 기존 JDBC 코드 작업 → Template 패턴 유사하거나 반복되는 알고리즘을 캡슐화하여 재사용하는 패턴입니다. 코딩 순서가 정해져있는(정형화된) 기술에서 특히 유용하게 활용됩니다. ※ JDBC, 트랜잭션, Mybatis, JPA, ... pom.xml에 Spring JDBC, DBCP 의존성 추가 .....

☘️ Spring

[Spring] day67 - AOP 실습 / 바인딩 변수

AOP 실습 AOP에서 포인트컷(Pointcut)을 여러 개 등록하고 해당 경우가 흔한 상황은 매우 일반적입니다. 포인트컷은 특정 메서드 또는 메서드 그룹을 선택하는 데 사용되며, 각 포인트컷은 다른 관심사(concern)와 결합하여 특정 메서드에 대한 어드바이스(Advice)를 적용합니다. 주로 CUD(Create, Update, Delete)와 관련된 포인트컷에서는 데이터베이스에 직접적인 변화가 발생하기 때문에 데이터의 검증, 보안, 트랜잭션 관리 등이 필요합니다. 이러한 관심사를 포함한 어드바이스를 CUD 관련 메서드에 적용하게 됩니다. 반면에 R(Read)은 데이터베이스에 변화를 주지 않고 데이터에 접근하는데 사용됩니다. 따라서 R과 관련된 포인트컷에서는 주로 데이터에 접근 권한 검사와 같은 보안..

☘️ Spring

[Spring] Day66 - AOP

AOP AOP(Aspect-Oriented Programming)는 프로그래밍 패러다임 중 하나로, 주로 관점 지향 프로그래밍이라고도 불립니다. AOP는 코드에서 흩어진 관심사(concern)를 모듈화하고 중복을 제거하여 코드의 가독성과 유지보수성을 향상시키는데 도움을 줍니다. 관심 분리 관심 분리(Concern Separation)는 소프트웨어 엔지니어링에서 중요한 원칙 중 하나로, 횡단 관심과 핵심 관심을 분리하는 것을 의미합니다. Controller 메서드 ( 개발자용 ) 로그 권한 확인 : 보안, 인증, 허가, ... 비즈니스 메서드( CRUD, 핵심 로직, 핵심 관심, ...) 트랜잭션, 보안 관제 로그, ... 1, 2, 4 : 공통 로직, 횡단 관심 3 : 핵심 관심, 핵심 로직, 비즈니스 ..

☘️ Spring

[Spring] day64 - 2Layerd 아키텍처 스타일

2-Layerd 아키텍처 스타일 2-Layerd 아키텍처 스타일은 소프트웨어 시스템을 두 개의 주요 계층 또는 레이어로 나누는 설계 패턴입니다. 이러한 레이어는 일반적으로 클라이언트 레이어(또는 프론트엔드 레이어)와 서버 레이어(또는 백엔드 레이어)로 구분됩니다. 각 레이어는 특정 역할과 책임을 갖고 있으며 상호작용하는 방식이 정해져 있습니다. 이전 방식 브라우저(Client, 사용자)에서 서버로 요청 request(내장객체 X, 키워드 O) DispatcherServlet 서블릿 생성 DI필요 (Spring에서 기본 제공하는 DispatcherServlet 사용) DispatcherServlet-servlet.xml을 참고하여 DI 스프링 컨테이너 구동 프레젠테이션 레이어 요청에 맞는 Controlle..

harveydent
개발 블로그