본문 바로가기

Spring boot/Bank App 만들기(deployment)

(31)
Bank App 만들기 ( deployment ) - 로그인 처리( 세션 메모리지는 누가 관리하고 있을까? ) 1. signin.jsp 파일 생성 및 로그인 페이지 요청 기능 구현아래 그림은 스프링 컨테이너 안에서의 간략한 동작 흐름이다. viewResolver를 확인 하고 SSR 에 대한 개념을 다시 떠올려 보자.즉, 뷰 리졸버는 ModelAndView 객체, Model 를 View 영역으로 전달하기 위해 알맞은 View 정보를 설정하는 역할을 한다.    2. 로그인 처리 기능 만들기SignInDTO 코드 추가package com.tenco.bank.dto;import com.tenco.bank.repository.model.User;import lombok.AllArgsConstructor;import lombok.Builder;import lombok.Data;import lombok.NoArgsConst..
Bank App 만들기 ( deployment ) - 회원 가입( 트랜잭션, 예외 처리, H2 테이블 생성 ) 1. 사전 기반 지식DTO 패키지와 Model 패키지를 분리하는 것이 바람직하다.💡 DTO(Data Transfer Object)와 모델 클래스를 분리하여 패키지를 만드는 것이 좋다. 그 이유는 다음과 같다1. 코드의 가독성 및 유지 보수성DTO와 모델 클래스를 별도의 패키지로 구분함으로써 코드의 구조가 명확해지고, 관련 클래스를 찾기 쉬워진다. 이를 통해 유지 보수성이 향상된다.2. 객체의 역할 구분: 모델 클래스는 데이터베이스의 테이블 구조를 표현하는 반면, DTO는 클라이언트와 서버 간의 데이터 전송을 담당한다. 이 두 객체의 역할이 다르기 때문에, 별도의 패키지로 구분하는 것이 좋다. 3. 유연한 변경: 애플리케이션의 요구 사항이 변경되면 DTO와 모델 클래스의 변경이 독립적으로 이루어질 수 있..
Bank App 만들기 ( deployment ) - MyBatis 설정 ( DB 접근 기술이란? ) 공식 문서 확인https://mybatis.org/mybatis-3/ mybatis – MyBatis 3 | IntroductionWhat is MyBatis? MyBatis is a first class persistence framework with support for custom SQL, stored procedures and advanced mappings. MyBatis eliminates almost all of the JDBC code and manual setting of parameters and retrieval of results. MyBatis can usemybatis.org   1. MyBatis 란?MyBatis는 자바 언어를 위한 데이터베이스 연동 프레임워크로, SQL 쿼리..
Bank App 만들기 ( deployment ) - 어노테이션 정리 @Autowired: 의존성 주입(Dependency Injection)을 수행할 때 사용되며, 필드, 생성자, 메서드에 적용할 수 있다.@Controller: 웹 애플리케이션의 컨트롤러 클래스를 표시한다.@Service: 비즈니스 로직을 수행하는 서비스 클래스를 표시한다.@Repository: 데이터 액세스 계층에 사용되는 리포지토리 클래스를 표시한다.@RestController: RESTful 웹 서비스의 컨트롤러 클래스를 표시한다. @Controller와 @ResponseBody를 함께 사용하는 단축 형태이다. @Configuration과 @Component의 주요 차이점@Configuration은 스프링 빈을 정의하는 설정 클래스에 붙이는 반면, @Component는 단순히 스프링이 관리해야 하는..
Bank App 만들기 ( deployment ) - Exception Handler 처리 ( HTTP 상태 코드가 뭘까? ) 1. @ControllerAdvice, @RestControllerAdvice 란?HTTP 통신을 통해 예외 상황을 클라이언트에게 알려주는 방법은 여러 가지가 있으며, 이들을 적절히 사용하는 것이 중요하다.   @ControllerAdvice와 @RestControllerAdvice는 Spring Framework에서 제공하는 어노테이션들로, 애플리케이션 전역에 걸쳐 발생하는 예외를 효과적으로 관리하고 처리하는 데 사용된다. 이들은 일종의 "예외 처리의 중앙 집중화"를 가능하게 해주며, 애플리케이션 내 여러 컨트롤러나 서비스에서 공통적으로 발생할 수 있는 예외를 한 곳에서 관리할 수 있게 해준다.  2. @ControllerAdivce 와 @RestControllerAdivce 에 차이점@Controll..
Bank App 만들기 ( deployment ) - MainController, mainPage.jsp 구현 버그 확인 // TODO - tools xml 파일 error check providedCompile 'javax.servlet:javax.servlet-api:3.1.0'   mainController.java 파일 생성package com.tenco.bank.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.GetMapping;@Controller // IoC 대상(싱글톤 패턴 관리가 된다.) --> 제어의 역전 public class MainController { // REST API 기반으로 주소설계 가능 // 주소설계 // http:local..
Bank App 만들기 ( deployment ) - 화면 구현2 ( 레이아웃 분리 ) header.jsp My Bank 마이바이티스를 활용한 스프링 부트 앱 만들어보기 Navbar Link Link Link About Me Photo of me: Fake Image Some text about me in culpa qui officia deserunt mollit anim.. Some Links Lorem ipsum dolor sit ame. Active Link ..
Bank App 만들기 ( deployment ) - 화면 구현1 ( 템플릿 가져오기 ) https://www.w3schools.com/bootstrap4/tryit.asp?filename=trybs_template1 W3Schools online HTML editorThe W3Schools online code editor allows you to edit code and view the result in your browserwww.w3schools.com     결과 확인 ! 간단하게 설명해서 우리가 생성한 서버에서 접근 방식을 호스명:포트번호:자원에위치를 통해서 요청을 하였고 HTML 파일 형식으로 응답 받은 후 우리 로컬 프로그램인 웹 브라우저가 태그를 분석해서 렌더링 과정을 확인 하였다.    SSR 렌더링을 하기 위해서 yml 설정 파일을 한번더 확인해보자.SSR(Server-S..

728x90