[내일배움캠프_Spring] 자바 Spring 입문_Transaction_230203
·
카테고리 없음
트랜잭션을 사용하고 있었지만 정확히 이해하지 못하고 있었다. Transactioln : 데이터 베이스에서 데이터에 대한 하나의 논리적 실행단계 ACID (원자성, 일관성, 고립성, 지속성) : 데이터베이스 트랜잭션이 안전하게 수행된다는 것을 보장하기 위한 성질을 가리키는 약어 특징 1) 더 이상 쪼갤 수 없는 최소단위의 작업 2) 하나의 최소 단위의 작업에 여러가지 데이터변경을 넣으면, 모두 저장되거나 아무것도 저장되지 않고나 보장 데이터베이스를 더 안전하게 관리하려면? (Primary, Replica) DB 운영방식 : 쓰기 전용 DB (Primary) 와 읽기 전용 DB (Replica) 를 구분 Primary: 쓰기 전용 >@Transactional 의 readOnly 속성 >readOnly 를 코..
[내일배움캠프_Spring] 자바 Spring 입문_localhost:8080 에러_230203
·
스파르타 부트캠프(spring)
Spring OAuth까지 수업을 들으면서 지도를 잘 나간것 같았는데.. 이런 에러가 생겼다. 구글링 해보니 쿠키를 삭제하면 된다고 하는데.. 내 경우에는 고쳐지지 않았다. 동일한 페이지가 무한히 반복될때 출력되는 에러 메시지라고 한다. 회원 관리 기능에 카카오정보를 불러와서 사용하는 기능을 구현하다가 생겼으니 그 부분에 문제가 생긴 듯 싶다. redirect하는 부분을 주의깊게 살펴보면 해결할 수 있다고 하는데, 따라서 만들었는데 왜 안될까..... localhost:8080/api/shop으로 접속은 됬는데, 프론트엔드가 구현이 되지 않았다. 붙여넣을 때 문제가 있었나보다. 내일 좀 더 찾아보기로
[내일배움캠프_Spring] 자바 Spring 입문_스프링 시큐리티 어노테이션_230201
·
스파르타 부트캠프(spring)
@AuthenticationPrincipal 매 요청마다 Filter를 활용하여 SecurityContext에 요청마다 인증되는 Authentication 객체를 set -> 이후에 Controller 에서 @AuthenticationPrincipal을 활용하여 가져올 수 있다. @EnableGlobalMethodSecurity @Configuration 인스턴스에 @EnableMethodSecurity 어노테이션을 이용하면, 어노테이션을 기반으로 한 보안을 작동시킬 수 있다. prePostEnabled, securedEnabled, jsr250Enabled 등의 엘리먼트를 제공한다. 원하는 것을 enabled 시켜서 보안을 적용할 수 있다. @EnableMethodSecurity 는 스프링 시큐리티 5..
[내일배움캠프_Spring] 자바 Spring 입문_Spring Security 주요 컴포넌트_230131
·
스파르타 부트캠프(spring)
Spring Security 와 Filter spring security 요청이 들어오면 Servlet FilterChain을 자동으로 구성한 후 거치게 함 필터는 클라이언트 요청이 전달되기 전후의 URL패턴에 맞는 모든 요청에 필터링을 해줌 보안 검사를 통해 올바른 요청이 아닐 경우 차단 ->따라서 Spring Security는 이런한 기능을 활용하기위해 Filter를 사용하여 인증/인가를 구현하고 있다. SecurityFilterChain : Spring 의 보안 Filter를 결정하는데 사용되는 Filter ->session, jwt 등의 인증 방식 들을 사용하는데 필요한 설정을 완전 분리할 수 있는 환경 제공 AbstractAuthenticationProcessingFilter 사용자의 crede..
[내일배움캠프_Spring] 자바 Spring 입문_CI / CD_230130
·
스파르타 부트캠프(spring)
CI/CD(Continuous Integration/Continuous Delivery)란? : 자동화하여 애플리케이션을 더욱 짧은 주기로 고객에게 제공하는 방법. 기본 개념 지속적인 통합 지속적인 서비스 제공 지속적인 배포 새로운 코드 통합으로 인해 개발 및 운영팀에 발생하는 문제("통합지옥")를 해결하기 위한 솔루션. 애플리케이션의 통합 및 테스트 단계에서부터 제공 및 배포에 이르는 애플리케이션 라이프사이클 전체에 걸쳐 지속적인 모니터링을 제공. (-> "CI/CD 파이프라인") CI/CD CI(Continuos Integration) : 개발자를 위한 자동화 프로세스(지속적인 통합). 애플리케이션 코드의 새로운 변경사항이 정기적으로 빌드 및 테스트를 거쳐 공유리포지토리에 병합 여러명의 개발자가 동시..
[내일배움캠프_spring] 주간회고 WIL - 12주차
·
스파르타 부트캠프(spring)
이번 주 공부 한 것 심화 프로젝트 숙련 프로젝트 테스트코드 프론트엔드 공부 내용 https://gyaeh-coding.tistory.com/80 [내일배움캠프_Spring] 자바 Spring 입문_AOP_230125 AOP란? : 동일한 로직을 반복하는 것은 비효율적이기 때문에 이를 해결하기 위해 부가기능의 모듈화가 필요하다. 핵심기능 : 각 API 별 수행해야 하는 비즈니스 로직 부가기능 : 핵심기능을 보조하 gyaeh-coding.tistory.com https://gyaeh-coding.tistory.com/81 [내일배움캠프_Spring] 자바 Spring 입문_테스트 코드 에러_230126 테스트코드를 배우는 과정에서 빌더 패턴(Builder Pattern)을 사용하는 도중 문제가 있었다. 강..
[내일배움캠프_Spring] 자바 Spring 입문_OAuth_230127
·
스파르타 부트캠프(spring)
OAuth(Open Standard for Authorization) : 개방형 Authorization 의 표준. API 허가(Authorize)를 목적으로 JSON 형식으로 개발된 HTTP 기반의 보안 프로토콜 ->사용자들이 사용하고자 하는 웹사이트 및 애플리케이션에 비밀번호를 제공하지 않고 접근 권한을 부여 받을 수 있게 해주는 공통적 수단으로서 사용 되어지는 기술. 다양한 클라이언트 환경에 적합한 인증(Authentication) 및 인가(Authorization) 의 위임 방법을 제공하고 그 결과로 클라이언트에게 접근 토큰 (Access Token) 을 발급하는 것에 대한 구조
[내일배움캠프_Spring] 자바 Spring 입문_테스트 코드 에러_230126
·
스파르타 부트캠프(spring)
테스트코드를 배우는 과정에서 빌더 패턴(Builder Pattern)을 사용하는 도중 문제가 있었다. 강의 따라서 잘 만든 것 같은데, builder()에 오류가 생겼다. Alt + Enter로 확인을 해보니 두가지 방법이 나왔다. create method 'builder' in SignupRequestDto Rename reference 둘 다 일단 시도를 해보긴 했는데 해결법이 아닌 것 같아 꽤 많은 시간을 잡아먹었던 것 같다. 테스트는 이미 만들어진 코드들이 잘 동작하는지 말 그대로 테스트 하는 것인데.. 둘 다 코드들에 추가적으로 작업을 해야 할 것 같아서 이게 아닌 것 같아 구글링을 하던 도중, RequestDto에 @Builder어노테이션을 추가하지 않아 생긴 문제였다. 추가를 했는데.. 이젠..