반응형
문제
계속 List 값을 불러오지 못하는 에러가 있었음.
MySimriController
@RestController
public class MySimriController {
@Autowired
private TestResultRepository testResultRepository;
@Autowired
private JwtService jwtService;
@GetMapping("/api/mysimri")
public ResponseEntity<TestResult> getTestResultsForQid(
@CookieValue(value = "token", required = false) String token ) {
System.out.println("심리결과 토큰 확인: " + token);
if (!jwtService.isValid(token)) {
System.out.println("유효한가요?");
throw new ResponseStatusException(HttpStatus.UNAUTHORIZED);
}
int memberId = jwtService.getId(token);
List<TestResult> testResults = testResultRepository.findByMemberIdAndQidOrderByTdateDesc(memberId, 10);
System.out.println("memberId: " + memberId + ", qid: 10");
System.out.println("list 출력"+testResults);
// 조회된 TestResult가 없을 경우
if (testResults.isEmpty()) {
System.out.println("조회된 TestResult가 없음");
return ResponseEntity.notFound().build();
}
// 여기서는 가장 최근의 TestResult를 반환하도록 함
TestResult latestTestResult = testResults.get(0);
return ResponseEntity.ok(latestTestResult);
}
}
TestResultRepository
public interface TestResultRepository extends JpaRepository<TestResult, Integer> {
void save(List<TestResult> testResults);
List<TestResult> findByMemberId(int memberId);
// qid가 10인 최근의 테스트 결과를 반환하는 메서드
//List<TestResult> findByMemberIdAndQidOrderByTdateDesc();
List<TestResult> findByMemberIdAndQidOrderByTdateDesc(int memberId, int qid);
}
원인
코드에는 문제가 없는데 안됐던 이유 :
DB에 데이터 값이 없었다. 있긴했는데 그게 다른 아이디의 값이었으므로 못 가져왔던거임. (member 데이터가 바뀌어서 몰랐음)
List 출력이 잘 된다.
반응형
'프로젝트' 카테고리의 다른 글
0525 프로젝트 트러블슈팅 게시판 정렬 및 출력 (0) | 2024.05.27 |
---|---|
마이페이지에 DB값 불러와서 출력하기 (0) | 2024.05.20 |
기존 DB 테이블에 id 저장하기 (토큰으로 받아오기) (0) | 2024.05.20 |
심리검사 총점 받아오기 (0) | 2024.05.17 |
[GeoServer] 시도, 시군구, 범례 레이어 겹치지 않게 (0) | 2024.04.04 |
댓글