회원 서비스 개발 단축키 에러 / .ifPresent부분이 에러
1122
작성한 질문수 2
[질문 내용]
회원서비스개발에서 2:18에
1. 무슨 단축키를 누르면 Optional<Member> byName = 이 뜨나요? 저는 그냥 타이핑했는데 어떻게 하면 그렇게 생기죠?
2.그리고 단축키 command option v 로 byName을 result로 변경했는데 그것도 단축키를 하면
왜 단축키를 했을 때 수업처럼 옵션이 안뜰까요
3.Optional<Member> byName = 부분 지우고
result부분 지우고 코드 정리했을 때 저는
.ifPresent부분이 에러가 납니다.


4.강의에 4:56 부분 control + t 로 method입력해서 Extract Method 가 뜨는데 저는 안뜹니다.
command option m 단축키로 Extract Method를 시도했는데 사용할수없다는데..어떻게해야되나요

확인부탁드릴게요...
답변 2
0
안녕하세요, leeha223 님. 공식 서포터즈 y2gcoder 입니다.
인텔리제이 단축키 사용에 대해 질문해주셨습니다.
무슨 단축키를 누르면 Optional<Member> byName = 이 뜨나요? 저는 그냥 타이핑했는데 어떻게 하면 그렇게 생기죠?
강의 코드 기준으로 memberRepository.findByName(member.getName()); 까지 타이핑하시고 findByName 메서드 위에 커서가 있는 상태에서 command + option + v 를 하시면 자동으로 변수로 추출할 수 있습니다.
그리고 단축키 command option v 로 byName을 result로 변경했는데 그것도 단축키를 하면 왜 단축키를 했을 때 수업처럼 옵션이 안뜰까요
위에서 말씀드렸던 단축키로 변수를 뽑아내면 바로 그 직후에만 뜨는 추천 변수명 리스트입니다. 이미 타이핑 한 상태에서는 해당 변수명에 커서를 올려도 생기지 않습니다.
Optional<Member> byName = 부분 지우고
result부분 지우고 코드 정리했을 때 저는
.ifPresent부분이 에러가 납니다.
올려주신 코드를 봤을 때
memberRepository.findByName(member.getName()); //여기 ; 때문에 밑에서 예외가 발생
.ifPresent(m -> {...});findByName() 후에 세미콜론을 입력하여 끝을 내셨기 때문입니다.
ifPresent()는 Optional 객체에 체이닝하여 사용할 수 있는 메서드입니다. memberRepository.findByName()의 반환 타입이 Optional 객체이기 때문에, ifPresent()를 연결해서 사용할 수 있는데, 세미콜론을 사용해서 이미 끝을 내고 그 다음에 .ifPresent()로 연결하려고 하셔서 자바 컴파일러가 해당 부분이 문제라고 알려주고 있습니다.
memberRepository.findByName(member.getName()).ifPresent(m -> {...}); 예를 들면 ifPresent()는 위와 같이 연결해서 사용하는 메서드입니다.
감사합니다.
..
0
76
2
Unused property.....
0
101
2
project JDK is misconfigured
0
132
2
외부 API의 ID 타입(String/UUID)과 내부 도메인의 ID 타입(Long)이 불일치할 때의 설계 정석
0
83
2
단위/통합 테스트 버전충돌 문제
0
91
2
❗️springboot 4.0.2 버전 aspectj dependency 설정❗️
0
230
1
왜 컨트롤러는 변한게 없는데 새로 만든 html 파일이 뜨나요?
0
104
2
윈도우 build test오류 질문
1
103
2
테스트 관련 공부에 대한 조언을 얻고 싶습니다
0
101
2
테스트 실행 시 에러 질문
0
292
1
name을 통한 비교와 객체를 통한 비교
0
77
1
빌드 후 libs 없음
1
129
1
윈도우 gradlew.bat 에러
0
167
1
@PostMapping("/members/new")가 동작하지 않습니다
0
89
1
java static class와 kotlin class
0
79
1
스프링 DB연결
0
126
1
소요 시간
0
87
2
ddl.sql에 빨간 밑줄
1
102
2
welcome page 에러
0
183
3
잘 모르겠습니다.
0
164
2
fail을 똑같이 쳤는데 오류가 발생해요
0
156
2
index.html Welcome page
0
124
1
프로젝트 gradle-groovy ?
0
369
1
테스트코드 메서드명 한글
0
202
2





