스프링프레임워크첫걸음9 9. 어플리케이션 만들기 1. 레이어별 컴포넌트애플리케이션 레이어클라이언트에서 받은 요청을 제어하고 도메인 레이어를 사용하여 애플리케이션을 제어합니다.Controller:요청을 처리에 매핑하고 결과를 뷰에 넘겨주는 제어를 수행합니다.주요 처리는 Controller 안에서 실행하지 않고 '도메인 레이어'의 Service를 호출합니다.Form:화면의 폼을 표현합니다. 화면에서 입력한 값을 Controller에 넘겨줍니다. 또한 Controller에서 화면에 결과를 출력할 때도 사용합니다. 도메인 레이어가 어플리케이션 레이어에 의존하지 않도록 Form에서 도메인 객체로 변환하거나 도메인 객체에서 Form으로 변환하는 것을 어플리케이션 레이어에서 수행해야 합니다.View:화면 표시를 담당합니다.도메인 레이어도메인 객체에 대해 어플리케이.. 2025. 1. 12. 8. 유효성 검사 기능 알아보기 1. 유효성 검사유효성 검사(Validation)는 입력 내용이 조건에 만족하는지 그 타당성을 확인하는 입력 체크를 말합니다. 유효성 검사는 크게 두 개로 나뉩니다.단일 항목 검사상관 항목 검사(서로 관련이 있는 항목을 함께 체크하는 방법) 1.1 단일 항목 검사단일 항목 검사는 입력 항목 하나에 대해 설정하는 입력 체크 기능입니다. Form 클래스 등의 필드에 어노테이션을 부여해서 사용합니다.입력 체크를 위한 어노테이션은 JavaEE에서 제공하는 어노테이션(Bean Validation) 혹은 하이버네이트(Hibernate) 프레임워크에서 제공하는 어노테이션(Hibernate Validator)이 있습니다. 또 수치 입력 항목에 알파벳 등의 문자열을 입력 등의 '형변환 체크'는 입력 체크를 설정하는 것만.. 2025. 1. 12. 7. 요청 파라미터 취득하기 1.요청 파라미터 종류서버에 전송되는 값을 요청 파라미터(Request Parameter)라고 한다. 스프링에서 요청 파라미터는 클라이언트가 서버로 데이터를 전달하는 데 사용되는 매개변수들을 의미한다. 다양한 종류의 요청 파라미터가 있으며, 주로 웹 개발에서 많이 사용되는 몇 가지를 아래에 설명한다.쿼리 문자열(Query String) 파라미터:설명: URL에 물음표(?) 뒤에 키-값 쌍으로 전달되는 파라미터로, 주로 GET 요청에서 사용된다.예시: https://example.com/api/resource?name=value&age=25활용: 검색 기능, 필터링, 정렬 등에 주로 사용된다.폼 데이터(Form Data)설명: HTML 폼을 통해 전송되는 데이터로, 주로 POST 요청에서 사용된다.예시: .. 2025. 1. 12. 6. 템플릿 엔진 알아보기 1. 템플릿 엔진뷰는 사용자에게 보여줄 내용을 처리 결과 데이터를 가지고 HTML을 생성해서 클라이언트에 응답을 알려주는 역할을 한다. 템플릿 엔진에 대해 간단하게 설명하면 '데이터를 미리 정의된 템플릿에 바인딩해서 뷰의 표시를 도와주는 것'이다.바인딩이란 어떤 요소나 데이터, 파일 등을 서로 연결하는 것을 의미한다. 2. 타임리프HTML 기반의 템플릿 엔진으로, 정해진 문법으로 작성하면 페이지를 동적으로 구현할 수 있다.HTML을 기반으로 하기 때문에 최종 출력을 생각하면서 뷰를 생성할 수 있다.즉, 타임리프를 사용하면 디자이너와 쉽게 분업할 수 있다.타임리프에 대해 학습하기 전에 반드시 기억해야 할 것은 모델이다.스프링 MVC가 요청을 받고 응답을 보낼 때까지의 흐름에 대해 다시 한 번 복습하고 진행.. 2025. 1. 12. 5. MVC 모델 알아보기 1. MVC 모델MVC 모델은 '프로그램의 처리 역할을 나누어서 프로그램을 작성하는 방법'으로 웹 시스템 개발에 자주 사용되고 있다.역할은 모델(M, Model), 뷰(V, View), 컨트롤러(C, Controller)의 세 종류로 분류한다.1.1 모델모델은 시스템에서 비즈니스 로직(Business Logic)을 담당한다. '비즈니스 로직'이라는 단어는 '시스템의 코어 부분' 혹은 '시스템의 목적을 처리하는 부분' 등을 나타낸다.비즈니스 로직을 회원 가입할 때의 상황에 비유하면 사용자가 입력한 아이디의 중복 확인, 본인 인증, 비밀번호 규칙 확인 등이 필요할 것이다. 이 중에서 아이디 중복 확인의 로직을 생각해보면 우선 사용자가 입력한 아이디 값을 메모리에 저장하고 회원 데이터베이스에서 동일한 아이디가.. 2025. 1. 12. 4. 데이터베이스 작업 1. 리포지토리리포지토리는 간단하게 말하면 데이터베이스를 조작하는 클래스이다. 리포지토리를 생성하는 경우에는 반드시 인터페이스를 정의하고 구현해야 한다. 그 이유는 리포지토리 인터페이스의 필드에 리포지토리 구현 클래스를 DI하여 특정 구현에 의존하는 것을 피할 수 있기 때문이다.자바에서는 인터페이스를 구현한 클래스의 접미사에 'Impl'을 붙이는 경우가 많다.(Impl: implements의 약자)2. 스프링 데이터 JDBC2.1 O/R 매퍼O/R 매퍼(Object-Realiational Mapper)를 간단한게 설명하면, 애플리케이션에서 사용하는 객체(O, Ojbect)와 릴레이션(R, Relational)의 데이터를 매핑하는 것이다. 조금 더 자세하게 설명하면 O/R 매퍼는 미리 설정된 객체와 관계형.. 2025. 1. 12. 이전 1 2 다음