본문 바로가기

Spring6

[springboot] 엔티티 int VS Integer 타입 차이 int 타입은 기본타입이고, Integer타입은 래퍼클래스이다.만약 도메인에 null이 들어온다면 int타입은 에러이고, Integer타입은 null값 으로 받아들인다.따라서, 가격이 없을 때 null로 하고 싶으면 Integer타입으로 선언하면 되고, @Column private Integer price; //가격0으로 하고 싶으면 int 타입으로 하면 된다.널값 허용X이면 int로 해서  @Column(nullable = false) private int price; //가격이렇게 하면 된다. 2024. 4. 6.
window.location과 redirect 차이 1. 윈도우 로케이션을 통한 페이지 이동 (Window Location Redirect): 장점: 클라이언트 측에서 처리되므로 서버에 요청을 보내지 않습니다. 빠르고 간편하게 페이지를 이동할 수 있습니다. 단점: 페이지 이동 후 새로고침을 통해 최신 데이터를 얻기 위해 추가적인 작업이 필요할 수 있습니다. 사용자가 JavaScript를 비활성화한 경우에는 작동하지 않을 수 있습니다. 2. 서버에서의 리다이렉트 (Server-side Redirect): 장점: 서버가 클라이언트에게 적절한 상태 코드와 함께 페이지 이동을 지시할 수 있습니다. 클라이언트 측에서 JavaScript를 사용하지 않아도 작동합니다. 단점: 클라이언트 측의 추가 요청이 필요하므로 약간의 성능 오버헤드가 발생할 수 있습니다. 서버 측.. 2024. 2. 25.
[springboot] 구글 로그인 api 테스트 사용자 추가 구글 로그인 만들고, 구글 로그인 버튼 클릭 했더니 Google의 인증 절차를 완료하지 않았습니다. 앱은 현재 테스트 중이며 개발자가 승인한 테스터만 앱에 액세스할 수 있습니다. 액세스할 자격이 있다고 생각되면 개발자에게 문의하세요. 라는 문구가 나오길래 테스트 사용자 설정하나가 빠졌다. OAuth 동의 화면 -> 테스트사용자 ADD USERS 클릭해서 이메일 추가 2024. 2. 18.
[springboot] 스프링에서 Bean 주입 시 @Autowired 사용을 권장하지 않는 이유 Spring에서 관리하는 Bean 객체 주입 방법에는 3가지가 있다. (Controller, Service에서 DI 발생)@Autowiredsetter생성자이 중 가장 권장하는 방식은 생성자로 주입받는 방식이다.(@Autowired는 권장하지 않는다.) 즉, 생성자로 Bean 객체를 받도록하면 @Autowired와 동일한 효과를 볼 수 있다. 생성자는 @RequiredArgsConstructor이 final이 선언된 모든 필드를 인자값으로 하는 생성자를 롬복의  @RequiredArgsConstructor가 대신 해준다.  (생성자를 직접 안 쓰고 롬복 어노테이션을 사용하는 이유는 해당 클래스의 의존성 관계가 변경될 때마다 생성자 코드를 계속해서 수정하는 번거로움을 해결하기 위함이다. @RequiredA.. 2024. 2. 15.