@NoArgsConstructor, @RequiredArgsConstructor, @AllArgsConstructor
@NoArgsConstructor @RequiredArgsConstructor @AllArgsConstructor public class Student { @NotNull private Long studentId; private String name; private int age; }
@NoArgsConstructor @RequiredArgsConstructor @AllArgsConstructor public class Student { @NotNull private Long studentId; private String name; private int age; }
설렘 프로젝트에 카카오 로그인 기능을 도입하며 Non-Blocking, Asyn 웹 서비스 프레임워크인 Spring WebFlux 의 공식문서를 공부하고 필요한 부분은 기록하려고 한다. 기존에 Spring 의 RestTemplate 을 사용해 Blocking 방식으로 외부 API 를 호출하는 기능을 구현했었는데, RestTemplate 이 maintenance mode 가 되었을 뿐만 아니라 사용하는 과정에서 불편함이 많았다.(특히 Latency 문제) 그래서 Non-Blocking, Asyn 방식의 장점을 경험해보기 위해 Spring WebFlux 를 사용하기로 했다. 트래픽을 고려해서 성능적인 이점을 측정해보고 도입하라는 공식문서의 표현이 있었지만, 우리 서비스는 트래픽이 적어서 사실 큰 의미는 없을..
Spring Security 공식문서를 보며 개인적으로 필요한 내용을 기록하고 있습니다. 계속 업데이트 될 수 있습니다. PasswordEncoder PasswordEncoder 인터페이스는 단방향 암호화를 수행한다. Spring Security 5.0 이전에는 PasswordEncoder 의 default 구현체가 NoOpPasswordEncoder 로 두었으나 지금은 여러가지 이유로 DelegatingPasswordEncoder 를 사용한다. DelegatingPasswordEncoder 아래 사진과 같이 사용할 수 있다. 여러 알고리즘들 중 선택할 수 있다. Spring Boot 의 Spring Security Auto Configuration https://docs.spring.io/spring-..
금오공대 김성렬 교수님의 "스프링과 JPA를 이용한 웹개발" 강의 학습 기록입니다. http://www.kocw.net/home/cview.do?cid=5e6aec4a9ae2dd45 ORM (Object Relational Mapping) 데이터베이스는 객체 지향적 개념이 없다. 따라서 데이터베이스를 자바에서 조작하려다 보면 객체 지향적 철학이 손실될 수 있다. 이를 방지하고자 나온 기술. 자바 클래스와 데이터베이스 table을 매핑. JPA (Java Persistence API) 자바 진영의 표준 ORM 자바에서 관계형 데이터베이스를 사용하는 방법을 정의한 인터페이스 -> 인터페이스므로 구현체가 존재해야 한다. 구현체 종류 : Hibernate(대부분), EclipseLink, DataNucleus ..