전체 글

나만의 참고서
WEB

SOP(Same-Origin Policy) / CORS(Cross-Origin Resource Sharing)

SOP (Same-Origin Policy) 어떤 출처(Origin)에서 불러온 문서나 스크립트가 다른 출처에서 가져온 리소스와 상호작용하는 것을 제한하는 중요한 보안 방식 Origin이란, Protocol, Host, Port의 조합을 의미 즉, 기본적으로 브라우저는 나의 서버가 아닌 다른 서버의 통신(요청/응답)을 제한 서버가 아닌, 브라우저에 구현된 정책 CORS (Cross-Origin Resource Sharing) 한 출처(Origin)에서 실행 중인 웹 애플리케이션이 다른 출처의 선택한 자원에 접근할 수 있는 권한을 부여하도록 브라우저에 알려주는 체제 절차 HTTP 요청의 헤더값에 Origin을 담에서 전송 응답의 헤더값에 Access-Controll-Allow-Origin에 '접근 가능한 ..

GIT

브랜치 전략 (Git Flow vs Github Flow vs Gitlab Flow)

Git을 사용하는 동안 브랜치를 효과적으로 관리하기 위한 방법론으로, 팀의 협업 방식과 개발 프로세스에 맞게 브랜치를 만들고 관리함으로써 개발 생산성을 향상시키고 충돌을 최소화한다 Git Flow 가장 보편화 된 브랜치 전략 feature / develop / release / hotfix / master(main) 총 5가지의 브랜치 feature develop 브랜치에서 파생 기능 개발 단위의 브랜치 develop master 브랜치에서 파생 기능 개발 또는 수정된 브랜치를 통합하는 브랜치 release develop 브랜치에서 파생 운영에 배포되기 위한 브랜치 hotfix master 브랜치에서 파생 운영에서 생기는 버그를 수정하기 위한 브랜치 수정되면, develop 브랜치와 master(main..

SPRING

Custom Annotation 기반으로 Session 정보 가져오기

@GetMapping("/") public String index(Model model, HttpSession httpSession) { SessionUser user = (SessionUser) httpSession.getAttribute("user"); if(user != null) { model.addAttribute("loginUserName", user.getName()); } return "index"; } SessionUser user = (SessionUser) httpSession.getAttribute("user"); 에 대한 부분을 메소드 인자로 세션값을 바로 받을 수 있도록 변경 LoginUser package com.dolzi.config.auth; import java.lang...

SPRING

Spring 웹 계층

Web Layer 흔히 사용하는 컨트롤러(@Controller)와 JSP/Freemarker 등의 뷰 템플릿 영역 이 외에도 필터(@Filter), 인터셉터, 컨트롤러 어드바이스(@ControllerAdvice) 등 외부 요청과 응답에 대한 전반적인 영역 Service Layer @Service에 사용되는 서비스 영역 일반적으로 Controller와 Dao의 중간 영역 Transactional이 사용되어야 하는 영역 Repository Layer Database와 같이 데이터 저장소에 접근하는 영역 Dao영역 Dtos Dto(Data Transfer Object)는 계층 간에 데이터 교환을 위한 객체 eg. 뷰 템플릿 엔진에서 사용될 객체 Repository Layer에서 결과로 넘겨준 객체 Domain..

dolzi
돌지