
작업 순서 1. AccountRepository, account.xml 코드 확인하기 2. 계좌 목록 기능 만들기 3. account/list.jsp 파일을 생성 AccountRepository(인터페이스)package com.tenco.bank.repository.interfaces;import java.util.List;import org.apache.ibatis.annotations.Mapper;import org.apache.ibatis.annotations.Param;import com.tenco.bank.repository.model.Account;//AccountRepository 인터페이스와 account.xml 파일을 매칭 시킨다. @Mapper public interface Accou..

파싱(parsing)주어진 데이터(예: 문서, 파일, 문자열 등)를 분석하여 구조를 이해하고, 필요한 정보를 추출 또는 변환하는 과정을 의미합니다. 프로그래밍에서는 주로 원시 데이터를 원하는 형태로 가공하기 위해 사용됩니다.예를 들어 HTML 문서에서 특정 데이터를 추출하거나, JSON 문자열을 객체로 변환하는 등의 작업이 파싱에 해당합니다. account/save.jsp 파일 생성 계좌생성(인증) Bank App에 오신걸 환영합니다 number: Password: number: 계좌 생성 SaveDTO 생성package com.tenco.bank.dto;import com.tenco.bank.repository.model...

1. dto 설계 하기 및 개념 확인(사전 기반 지식) 2. UserController, UserService 설계 및 유효성 검사, 예외 처리 3. h2 스키마 및 초기 데이터 셋팅 4. 회원 가입 화면 구현 1. 사전 기반 지식 DTO 패키지와 Model 패키지를 분리하는 것이 바람직하다. DTO(Data Transfer Object)와 모델 클래스를 분리하여 패키지를 만드는 것이 좋습니다. 그 이유는 다음과 같습니다:1. 코드의 가독성 및 유지 보수성: DTO와 모델 클래스를 별도의 패키지로 구분함으로써 코드의 구조가 명확해지고, 관련 클래스를 찾기 쉬워집니다. 이를 통해 유지 보수성이 향상됩니다. 2. 객체의 역할 구분: 모델 클래스는 데이터베이스의 테이블 구조를 표현하는 반면, DTO는 클..

@Autowired: 의존성 주입(Dependency Injection)을 수행할 때 사용되며, 필드, 생성자, 메서드에 적용할 수 있습니다.@Controller: 웹 애플리케이션의 컨트롤러 클래스를 표시합니다.@Service: 비즈니스 로직을 수행하는 서비스 클래스를 표시합니다.@Repository: 데이터 액세스 계층에 사용되는 리포지토리 클래스를 표시합니다.@RestController: RESTful 웹 서비스의 컨트롤러 클래스를 표시합니다. **@Controller**와 **@ResponseBody**를 함께 사용하는 단축 형태입니다. @Configuration과 @Component의 주요 차이점 @Configuration은 스프링 빈을 정의하는 설정 클래스에 붙이는 반면, @Component는 ..

1. @ControllerAdvice와 @RestControllerAdviceHTTP 통신을 통해 예외 상황을 클라이언트에게 알려주는 방법은 여러 가지가 있으며, 이들을 적절히 사용하는 것이 중요합니다. @ControllerAdvice와 @RestControllerAdvice는 Spring Framework에서 제공하는 어노테이션들로, 애플리케이션 전역에 걸쳐 발생하는 예외를 효과적으로 관리하고 처리하는 데 사용됩니다. 이들은 일종의 "예외 처리의 중앙 집중화"를 가능하게 해주며, 애플리케이션 내 여러 컨트롤러나 서비스에서 공통적으로 발생할 수 있는 예외를 한 곳에서 관리할 수 있게 해줍니다. 2. @ControllerAdivce 와 @RestControllerAdivce 의 차이점 @Controll..

작업 순서 1. mainController.java 파일 생성 2. 간단한 CSS 설정하기 3. 외부 스타일 시트로 변경 하기 4. 하단에 붙는 푸터 설정하기 build.gradle에 의존성 추가providedCompile 'javax.servlet:javax.servlet-api:3.1.0' 1. mainController.java 파일 생성 package com.tenco.bank.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.GetMapping;@Controller // IoC 대상(싱글톤 패턴 관리가 된다.) --> 제어의 역전 public clas..

1. 템플릿 가져오기작업 순서1. 부트스트랩 활용하기2. main.jsp 파일 생성 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 설..
모델링(modeling)현실 세계의 시스템이나 프로세스를 컴퓨터 시스템 내에서 표현하기 위해 추상화하는 과정을 의미합니다. 이 과정에서 중요한 정보를 식별하고, 해당 정보 간의 관계를 정의하여, 데이터 구조나 알고리즘 등을 설계합니다.소프트웨어 개발 과정에서 요구 사항 분석, 설계, 구현 전 단계에서 중요한 역할을 합니다. 특히, 데이터베이스 모델링은 정보 시스템의 데이터 구조를 설계하는 데 중점을 둡니다.DB 존재하는 데이터 타입과 자바에서 사용하는 데이터 타입은 일치하지 않습니다. DB 세상에 있는 존재들을 자바 세상에 존재할 수 있도록 모델링합시다. ORM (Object-Relational Mapping)객체-관계 매핑을 의미하며, 객체 지향 프로그래밍 언어를 사용하여 생성된 객체와 관계형 데이터베..

코딩 컨벤션(coding convention)특정 프로그래밍 언어로 코드를 작성할 때 따르는 스타일 가이드 또는 규칙 세트입니다. 이는 변수명, 메서드명, 클래스명의 네이밍 규칙, 들여쓰기, 주석 작성 방법, 파일 구조, 코드 정렬 방식 등 프로그램의 가독성, 유지보수성, 일관성을 향상시키기 위한 방법론을 포함합니다. 코딩 컨벤션 정의정적 파일 (CSS, XML, JS)규칙: 소문자 사용, 단어 간 구분은 스네이크 케이스(_)로 합니다.예시: style_sheet.css, config_file.xml, main_script.jsJSP 파일규칙: 카멜 케이스(CamelCase)를 사용하여 첫 글자는 소문자로 시작합니다.예시: home.jsp, accountPage.jsp자바 파일 (클래스)규칙: 파스칼 ..

패키지(package)관련된 클래스, 인터페이스, 서브패키지 등을 그룹화하여 정리하는 방법입니다. Java에서 패키지는 네임스페이스를 제공하여 클래스 이름 간의 충돌을 방지하고, 보다 체계적으로 코드를 조직화할 수 있게 합니다. 패키지는 물리적으로 파일 시스템의 디렉토리에 해당하며, 패키지 내의 클래스나 인터페이스는 이 디렉토리 내에 위치합니다.주 언어 파일들을 모아 두는 폴더를 패키지라 부릅니다. Spring boot WEB MVC 프레임 워크정적자원을 두는 패키지src/main/resource/static(정적 자원 루트 폴더)css, js, image 파일등을 넣어 둘 수 있습니다. 동적자원(JSP 활용)이 예제에서는 webapp/WEB-INF(보안폴더)/view/ 형식으로 생성할 예정 입니다. ..