Languege

Languege/Java & Spring

[JPA] DynamicUpdate 안되는 문제

현재 JPA를 사용하며 간단한 사이드 프로젝트를 만들고 있던 중 리펙토링을 진행하고 있는데 update시 DynamicUpdate가 걸려있는 entity를 update 할 때 문제가 발생하였습니다. 🎈 Paper Entity @NoArgsConstructor(access = AccessLevel.PROTECTED) // new 클래스() 제한 @ToString(callSuper = true) @EqualsAndHashCode @Getter @Entity @DynamicInsert // null로 들어가야 하는 경우 대응(기본값) @DynamicUpdate // 변경한 필드만 대응 @Table(name = "tbl_paper") public class Paper { @Id @GeneratedValue(st..

Languege/Java & Spring

[Spring Framework OPEN API서비스 교육] OAuth 2.0

[OAuth 1.0의 문제점] - WebApp 클라이언트에서는 사용할 수 없음 - 개발과 테스트의 어려움 : Signature - 인증서버와 리소스 서버의 분리가 힘듦 [OAuth 2.0] - 다양한 인증 방식 제공(4가지) - HTTPS 사용의 의무화 - Signature를 사용하지 않음(Secret 평문으로 전송 -> HTTPS 사용 필수) - 인증&인가 단계의 간소화(앱 승인 -> 액세스 토큰 발행) [OAuth 2.0과 1.0의 차이] - HTTPS 사용 의무 - Access Token Secret이 없음 [OAuth 2.0 작동 방식] 1.사용자(브라우저)가 클라이언트 웹서버에 접근한다. 2.클라이언트 웹서버는 사용자에게 앱 승인을 요청한다.(리다이렉트) 3.사용자는 인증서버에 클라이언트 승인을..

Languege/Java & Spring

[Spring Framework OPEN API서비스 교육] OAuth 1.0

OAuth 1.0 OAuth는 사용자들은 Consumer에게 Provider상의 인증 정보를 제공할 필요 없이, Consumer에서 Provider의 개인 데이터로의 접근을 허용하는 방법을 제공하는 인증 위임 프로토콜 Consumer에게 실제 ID와 비밀번호가 전달되지 않고 Provider에 제공하면 Provider에서 Consumer에게 인증 토큰을 제공하는 방식 3-legged OAuth [프로세스 요약] 컨슈머는 CK,CS를 이용해 RT,RTS를 응답받는다. 컨슈머는 사용자를 Provider가 제공한 Redirect Authorization page로 이동시킨다. 사용자는 provider에 컨슈머를 인가한다. 사용자가 클라이언트를 승인했음을 증빙하는 정보 Verifier(Code)를 가지고 클라이언..

Languege/Java & Spring

[Spring Framework OPEN API서비스 교육] 1.API KEY란?

[API KEY] 특징 - 인증(X) : 식별만 수행한다. - 목적 : 통계와 사용량 제한 - 공용 데이터 조회시에 주로 사용 사이트 단위로 접근 허용 - 사용자별 로그인을 하지 않아도 접근 가능한 페이지에 적용 가능 - 1일 사용량 제한하는 경우가 많음 서명 키 없이 API KEY와 사이트 URL을 이용해 접근 제한이 가능하다. 1.클라이언트 개발자는 Provider에 hostName 및 기타 정보를 이용해 API KEY를 요청한다. 2.Provider는 API KEY를 생성하고 hostName 및 기타 정보를 DB에 저장하고 , API KEY를 발급한다. 3.클라이언트 개발자는 해당 API KEY를 통해 데이터를 요청한다. 4.Provider는 API KEY & Origin을 Validate하고 성공..

Languege/Java & Spring

[스프링 에러] 카카오 로그인 시 발생 오류 및 해결방법 Provider ID must be specified for client registration 'kakao'

카카오 로그인 api 적용 도중 Provider ID must be specified for client registration 'kakao' 에러가 발생했습니다. 에러로그 2022-08-24 22:35:26.863 ERROR 21516 --- [ restartedMain] o.s.boot.SpringApplication : Application run failed org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'webSecurityConfig': Unsatisfied dependency expressed through method 'setContentNegotationStrate..

Languege/JavaScript

invalid property value 에러

JS에서 style을 지정해줬는데 invalid property value라는 에러가 발생했습니다. 우선순위 문제인가 해서 !important를 붙여도 문제가 그대로 발생하였고, 자세히보니 스타일을 지정해줄 때 공백이 발생하여 생기는 문제여서 공백을 제거하니 정상 작동했습니다.

Languege/Java & Spring

[김영한 스프링] 빈 스코프

빈 스코프란? 기본적으로 스프링 빈은 스프링 빈이 스프링 컨테이너의 시작과 함께 생성되어서 스프링 컨테이너가 종료될때 까지 유지되는데, 이것은 스프링 빈이 싱글톤 스코프로 생성되기 때문입니다. 그렇다면 다른 생명주기를 가진 스코프는 어떤게 있을까요? 싱글톤: 기본스코프, 스프링 컨테이너의 시작과 종료까지 유지되는 가장 넓은 범위의 스코프 프로토타입 : 스프링 컨테이너가 프로토타입 빈의 생성과 의존관계 주입까지만 관여하고 더는 관리하지 않는 짧은 범위의 스코프 request : 웹 요청이 들어오고 나갈때 까지 유지되는 스코프 session : 웹 세션이 생성되고 종료될 때 까지 유지되는 스코프 application : 웹의 서블릿 컨텍스트와 같은 범위로 유지되는 스코프 싱글톤으로 생성된 빈은 스프링 DI ..

Languege/Java & Spring

[김영한 스프링] 빈 생명주기 콜백

빈 생명주기 콜백 시작 DB 커넥션 풀이나, 네트워크 소켓처럼 애플리케이션이 시작하는 시점에 연결하고, 종료되는 시점에 연결을 종료하는 작업을 하려면 객체의 초기화와 종료 작업이 필요합니다. 이번 강의에서는 스프링에서의 빈 생명주기 콜백을 공부했습니다. 스프링 빈의 이벤트 라이프사이클 스프링 컨테이너 생성 스프링 빈 생성 의존관계 주입 초기화 콜백 사용 소멸전 콜백 스프링 종료 초기화 콜백: 빈이생성되고, 빈의 의존관계 주입이 완료된 후 호출 소멸전 콜백: 빈이 소멸되기 직전에 호출 객체의 생성과 초기화를 분리하자. 생성자는 필수 파라미터를 받고, 메모리를 할당해서 객체를 생성하는 책임을 가집니다. 반면 초기화는 이렇게 생성된 값들을 이용해 외부 커넥션 연결 등 무거운 동작을 수행합니다. 따라서, 생성자..

mntdev
'Languege' 카테고리의 글 목록 (2 Page)