분류 전체보기69 [TIL] 221115 - SpringBoot Part3 : Spring MVC - jsp, Thymeleaf SpringBoot Part3 (2) DispatchServlet Front Controller Pattern : 하나의 servlet : Front contoller가 모든 요청을 받아 다른 컨트롤러를 호출하고 로직을 위임한다. → Spring은 Front Controller Pattern을 사용한 DispatchServlet을 제공 Spring MVC 처리 흐름 DispatcherServlet의 HTTP 요청 접수 DispatcherServlet에서 컨트롤러로 HTTP 요청 위임 컨트롤러의 모델 생성과 정보 등록 컨트롤러의 결과 리턴: 모델과 뷰 DispatcherServlet의 뷰 호출과 (6) 모델 참조 HTTP 응답 돌려주기 DispatchServlet 만들기 (HTTP 요청 접수) WebApp.. 2022. 11. 22. [TIL] 221114 - SpringBoot Part3 : 웹 기술 Overview, Servelt SpringBoot Part3 (1) Web의 구성 URI : 웹을 구성하는 정보, 리소스들을 식별하기위한 식별자 상대 경로, 절대 경로 (시작점 /foo/bar) 상대 경로 결대 경로(/로 시작) hoge (./huge) /foo/bar/hoge hoge/fuga /foo/bar/hoge/fuga ../hoge /foo/hoge ../../foge /foge ./ → 현재경로 ../ → 부모경로 특정위치로 옮길때 상대경로를 사용하는 것이 좋다 : 절대경로를 이용하면 도메인까지 올라가 잘못된 리소스에 접근할 위험이 있다. 사용할 수 있는 문자 (ASCII 문자) : 영어, 숫자, 특정 기호 HTTP 클라이언트 → 웹 브라우저 → OS → 호스트 서버 특징 TCP/IP 기반 요청/응답형 프로토콜 동기형 프.. 2022. 11. 22. [TIL] 221111 - SpringBoot Part2 : 트랜잭션과 AoP SpringBoot Part2 (5) AoP - 관점 지향 프로그래밍 기능,관심 지향적 프로그래밍 Cross Cutting Concern https://www.codejava.net/frameworks/spring/understanding-spring-aop : 중복코드를 일일히 사용하는 것이 아닌 행단으로 걸쳐서 적용해야하는 부가기능(Cross Cutting Concern)을 분리해서 방식 핵심로직에 부가기능을 쉽게 추가할수 있게한다. class 계좌이체서비스 { method 이체() { AAAA 비즈니스 로직 BBBB } method 계좌확인() { AAAA 비즈니스 로직 BBBB } } class 대출승인서비스 { method 승인() { AAAA 비즈니스 로직 BBBB } } 비지니스 메소드는 비.. 2022. 11. 22. [TIL] 221110 - SpringBoot Part2 : Embedded DB, Named Parameter Template, 트랜잭션 SpringBoot Part2 (4) 1. Embedded DataBase 기존 테스트 : DB 구동이 되지않으면 테스트에 실패하는 구조 → 외부환경에 영향을 받는 테스트 → 테스트 자동화(jenkins같은 CI 툴을 이용한) 불가 Spring에서 Embedded Database 제공 Data Access Data Access The Data Access Object (DAO) support in Spring is aimed at making it easy to work with data access technologies (such as JDBC, Hibernate, or JPA) in a consistent way. This lets you switch between the aforementioned.. 2022. 11. 11. [TIL] 221109 - SpringBoot Part2 : Spring의 JDBC지원 SpringBoot Part2 (3) org.springframework.boot spring-boot-starter-jdbc DataSource connection을 매번 생성하고 close하면 그 과정에서 많은 리소스가 허비된다. 이러한 문제를 해결하기 위해 connection pool 개념이 등장. JDBC에서는 driver maneger 외에 dataSource를 이용해 커넥션을 가져올 수 있고, dataSource가 connection을 관리하는 객체가된다. DataBase Connection Pool(DBCP) dataSource를 통해 데이터를 얻거나 반납할 수 있다. close를 하면 실제 물리적으로 연결을 끊는게 아니라 풀에 반납하는 것 DBCP를 구현한 다양한 라이브러리가 있다. (si.. 2022. 11. 10. [TIL] 221108 - SpringBoot Part2 : JDBC SprintBoot part2 (2) JDBC 시작하기 JDBC allows a java application to connect a relational database 크게 두 단계 레이어로 구성된다. JDBC API JDBS DB Driver docker를 이용해 mysql 실행 IntelliJ 연결 maven dependency 추가 JDBC CURD 실습 1. jdbc connection public class JdbcCustomerRepository { private static final Logger logger = LoggerFactory.getLogger(JdbcCustomerRepository.class); public static void main(String[] args) throws.. 2022. 11. 8. 이전 1 ··· 3 4 5 6 7 8 9 ··· 12 다음