Java Spring Boot (82) 썸네일형 리스트형 Optional, Optional.of 설명 Optional churchLocation = Optional.of(body.getChurchLocation()); Optional churchLogoUrl = Optional.ofNullable(body.getChurchLogoUrl()); Optional.of() 메서드를 사용하여 churchLocation을 만들면, body.getChurchLocation()의 값이 null이 아니어야 합니다. 그러므로 churchLocation의 값은 반드시 존재해야 하며, 값이 null이면 NullPointerException이 발생할 수 있습니다. 즉, churchLocation은 값이 반드시 있어야 하고, churchLogoUrl은 값이 있을 수도 있고 없을 수도 있는 것으로 이해하시면 됩니다. 질문) service, repository(@Query) / 코드 인증시 로컬시간 왜 필요? public List getChurchList( CustomUserDetails customUserDetails, String churchName) { // 1. 유효한 멤버인지 검사 this.memberRepository.getMemberByMemberId(customUserDetails.getMemberId()) @Query("SELECT m FROM MemberEntity m WHERE m.isActive = true and m.memberId = :memberId") Optional getMemberByMemberId(@Param("memberId") Long memberId); 여기서 customUserDetails, churchName 파라미터는 controller에서 받은 파라미터이고, re.. @PathVariable과 @RequestParam 차이? @PathVariable은 {userId}와 같은 특정 정보를 받아올 때 사용한다고 이해되고, @RequestParam의 경우는 users/search?keyword=john&age=30 와 같은 형태의 쿼리 파라미터를 추출할 때 사용된다고 이해됨. @PathVariable과 @RequestParam은 스프링 프레임워크에서 사용되는 두 가지 다른 어노테이션입니다. @PathVariable: 이 어노테이션은 URL 경로(path)에서 특정 부분을 추출하여 메서드의 매개변수에 매핑합니다. 일반적으로 URL 경로에 포함된 동적인 값(예: /users/{userId})을 추출할 때 사용됩니다. 이를 통해 URL 경로의 일부를 메서드로 전달할 수 있습니다. 예시: java @GetMapping("/users/{u.. 생성자는 언제 실행이 되는지? => 클래스의 인스턴스(객체가) 실행될 때 실행됨 CustomUserDetails 클래스의 public CustomUserDetails(JwtDto.memberInfo memberInfo) 생성자는 클래스의 인스턴스가 생성될 때만 호출됩니다. 즉, CustomUserDetails 객체가 생성될 때만 해당 생성자가 실행됩니다. @Getter public class CustomUserDetails implements UserDetails { private String username; private String password; private final boolean accountNonLocked = true; private final boolean accountNonExpired = true; privat.. 자바) 생성자, 객체 간단한 예제 코드 // 간단한 클래스 정의 public class Person { private String name; private int age; // 생성자 정의 public Person(String name, int age) { this.name = name; this.age = age; } // 객체의 정보 출력 메서드 public void displayInfo() { System.out.println("Name: " + name + ", Age: " + age); } public static void main(String[] args) { // 생성자를 사용하여 객체 생성 Person person1 = new Person("Alice", 25); Person person2 = new Person("Bob", 3.. @Annotation 정리 @AuthenticationPrincipal :Spring Security에서 현재 인증된 사용자의 Principal(주체)을 주입받기 위해 사용되는 어노테이션. 현재 사용중인 Port 확인 / 해제하기 *상황 : 로컬서버 실행을 하려고 하니, 아래와 같이 이미 Port가 사용 중이라고 표기되는 경우 Description: Web server failed to start. Port 8080 was already in use. Action: Identify and stop the process that's listening on port 8080 or configure this application to listen on another port. *해결 : 터미널 -> 현재 사용 중인 포트 확인(lsof -i :8080) -> PID 번호 복사 -> kill PID번호 입력 -> 해지 됨 => 다시 로컬서버 실행 => 동작함. IntelliJ에서 로컬 원격 브랜치 새로 생성(따는법) 로컬(내 컴퓨터) 원격(GitHub server) 만약 창수가 원격 main브랜치에 코드를 작성하고 업데이트를 해두면 나는 그 업데이트 된 코드를 받아와야함. 우선 좌측에 옵션 중에, “모든 원격 패치하기” 실행 후 원격의 main브랜치에 있는 코드들을 패치 해주고, 로컬/main에서 업데이트 해주기. 이전 1 ··· 6 7 8 9 10 11 다음