Kakao Developer setting 1. 카카오 디벨로퍼 사이트에서 (https://developers.kakao.com/) -> 내 애플리케이션 -> 애플리케이션 추가하기 2. 앱 이름 등록후 플랫폼 등록 3. 앱 키에서 REST API 키 복사해서 저장해두기 4. 카카오 로그인 활성화 & Redirect URI 등록 5. 카카오 로그인 API 참고해서 필요한 것들 & 필수 정보 동의하기 https://developers.kakao.com/docs/latest/ko/kakaologin/rest-api Kakao Login API https://developers.kakao.com/docs/latest/ko/kakaologin/rest-api Kakao Developers 카카오 API를 활용하여..
DAO(Data Access Object) 데이터베이스의 data에 접근하기 위한 객체 (DB 로직과 비즈니스 로직을 분리하기 위해 사용) + DAO 와 Repository는 둘 다 똑같이 DB에 접근하기 위한 객체이지만 Repository는 아래와 같이 객체를 테이블에 맵핑하지만 List findByUserNo(String userNo); DAO는 아래와 같이 객체를 SQL에 맵핑한다는 차이점이 있다. return sqlSession.select("User.selectUserInfo", userDomain); DTO(Data Transfer Object) 데이터 교환을 위해 사용하는 객체( 로직을 가지지 않고 getter & setter만을 가짐 ) DTO로 프론트와 백엔드 간 데이터를 주고받고 DAO..
WebFlux란? 비동기 non-blocking 메세지 처리가 가능하며, 반응형 서비스를 만들 때 유용하다. HTTP와 다르게 연결성이기 때문에 한번 연결한 이후에는 따로 요청을 보내지 않아도 서버에서 응답을 보내면 데이터가 들어온다. netty서버에서 실행이 가능하며, SSE 프로토콜을 사용한다. Non-blocking vs Async non-blocking: 작업이 완료되지 않더라도 다른 작업을 처리할 수 있음 ex) 클라이언트가 서버로 메세지 전송 후 응답을 받지 않더라도 다음 작업을 진행할 수 있다. async: 작업이 완료되어야 다음 작업으로 넘어가지만, 작업을 처리하는 동안 다른 적업이 실행될 수 있음 ex) 메세지 전송 후 응답을 받고 다음 작업으로 넘어간다. Flux와 Mono의 차이 Fl..
Eureka Server를 사용하는 이유 마이크로 서비스가 다른 마이크로 서비스를 호출하려면 대상의 IP, Port를 알아야한다. 하지만, random IP, Port일 경우 마이크로 서비스의 정보를 알기가 쉽지 않기 때문에, 각 마이크로 서비스의 IP, Port 정보를 저장하고 검색해주는 Discovery Service(Eureka Service)가 필요하다. Eureka Server 사용법 1. Dependency 추가 (gradle) implementation 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-server' 2. @EnableEurekaServer를 이용해서 eurekaServer로 등록한다. @SpringBootAppl..