본문 바로가기

Spring7

[Spring] Validation 목차 1. Validation ■ Validation이란? Validation은 올바르지 않은 데이터를 걸러내고 보안을 유지하기 위해 여러 계층에 걸쳐서 적용되는 것을 말합니다. Client의 요청 데이터가 모두 정상적인 방식으로 들어오는 것도 아니기 때문에 데이터의 유효성 검사를 해야 할 필요가 있습니다. ■ 설치 MVN에서 Validation을 버전에 상관없이 dependency에 작성 후 버전을 지우고 설치 2. Validation Exception 처리 @Valid를 사용하지 않고 직접 Exception을 만들어 조건을 주어 예외 처리를 진행하도록 하는 방법입니다. ■ 예시 a. CustomException 메세지를 매개변수로 가지는 생성자 메세지와 각 error들의 정보를 가질 수 있는 erro.. 2023. 8. 11.
[Spring] AOP(Aspect Oriented Programming) 목차 1. AOP(Aspect Oriented Programming) ■ AOP란? AOP는 관점 지향 프로그래밍으로 불립니다. 관점 지향은 어떤 로직을 기준으로 핵심적인 관점, 부가적인 관점으로 나누어서 보고 그 관점을 기준으로 각각 모듈화하는 것이며 모듈화는 공통된 로직이나 기능을 하나의 단위로 묶는 것을 말합니다.예를 들어 소스 코드상에서 계속 반복해서 쓰는 코드들을 발견할 수 있는데 이것을 흩어진 관심사(Crosscutting Concerns)라고 부릅니다. 이러한 흩어진 관심사를 Aspect로 모듈화하고 핵심적인 비즈니스 로직에서 분리하여 재사용하겠다는 것이 AOP의 취지입니다. ■ Spring AOP 특징 접근 제어 및 부가기능을 추가하기 위해서 Proxy 패턴 기반의 AOP 구현체, Prox.. 2023. 7. 25.
[Spring] MVC(Model-View-Controller) 목차 1. MVC ■ 정의 MVC(Model-View-Controller)는 사용자 인터페이스, 데이터 및 논리 제어를 구현하는데 널리 사용되는 소프트웨어 디자인 패턴입니다. 소프트웨어의 비즈니스 로직과 화면을 구분하여 더 나은 업무의 분리와 향상된 관리가 가능합니다. ■ 구성요소 Controller는 로직을 의미하며 사용자의 요청에 따라 URL을 분석하여 Model과 View를 호출 Model은 데이터의 저장소이며 Controller의 요청에 따라 사용자가 요청한 내용을 업데이트 View는 인터페이스 요소로서 Model에서 업데이트된 내용을 사용자에게 보여줌 ■ 구조 2. Spring MVC ■ 정의 Spring MVC는 기본요소인 Model, View, Cotroller외에도 여러 컴포넌트들을 가집니.. 2023. 7. 24.
[Spring] Spring Boot 설치 목차 1. Spring Boot 설치 ■ Spring Boot 설치 spring.io 접속 spring initalizr로 들어가서 순서대로 기본 세팅 설정(아래 목록 참고) Generate를 클릭하여 알집 파일 설치 2. Spring Boot 설정 ■ Project ■ Language ■ Spring Boot 실 사용 버전은 2.6.6 버전이지만 설정에 없으므로 2.7.10으로 설정 후 내부에서 변경 ■ Project Metadata Group은 기업 도메인명 Artifact는 빌드되어 나올 결과물 Name은 프로젝트명 (일반적으로 Artifact와 동일하게 해줌) Description은 설명 Package name은 패키지 이름 (Group과 Artifact를 설정하면 자동으로 생성) ■ Depend.. 2023. 7. 24.
[Spring] 스프링 프레임워크(Spring Framework) 목차 1. Spring Framework ■ Spring Framework 설치 스프링 홈페이지로 접속 Projects에 Spring Tools 4 클릭 사용하는 운영체제에 맞게 설치 WINDOWS X86_64 설치된 파일이 알집일 경우 jarfix를 다운로드 하면 설치 파일의 확장자가 .jar로 변경 .jar로 변경 후 더블 클릭하여 설치 편의성을 위해 설치된 폴더 내 SpringToolSuite4를 바탕화면에 바로 가기 만들어 완료 ■ Spring Framework 설정 SpringToolSuite4 실행 후 window에 Preferences 클릭 Preferences에서 검색 창에 encoding을 입력 후 Content Types를 클릭 해당 영역에 Default encoding을 UTF-8로 .. 2023. 7. 24.
[Spring] Spring vs Spring Boot 목차 1. Spring ■ Spring이란? 스프링은 엔터프라이즈용 자바 애플리케이션 개발을 편하게 할 수 있게 해주는 오픈소스 경량급 애플리케이션 프레임워크입니다. 대표적인 특징은 의존성 주입, 관심 지향 프로그래밍 및 데이터 액세스와 같은 다양한 측면을 처리하여 개발 프로세스의 단순화가 가능합니다. ■ POJO(Plain Old Java Objects) 프로그래밍 지향 POJO는 순수 Java만을 통해서 생성한 객체를 의미 개발자가 복잡한 상속이나 특정 인터페이스 구현 없이 간단하게 재사용 가능하며 유연하게 확장 및 변화 가능 코드가 단순해져 쉬운 테스트 가능 ■ IoC / DI(Inversion of Control / Dependency Injection) IoC는 객체 생성 및 의존성 관리에 대한.. 2023. 7. 24.