오류 정리 ( 같은 실수 하지 말자)

[Mybatis] (HTTP 상태 500 – 내부 서버 오류)There is no getter for property named 에러 해결방법

Reload0213 2021. 12. 17. 01:48

 

 

원인

UPDATE EASY_COMMON.member
        SET 
            id = #{id},
            password = #{password}
     	   createDate = #{createDate}

간단하다 mybatis에 써놓은 쿼리중에 #{변수} << 부분이 일치 하지 않아 나오는 문제이다

 

다루고자하는 VO의 데이터명 혹은 데이터베이스의 컬럼명과 일치하지 않아서 발생한다.

 

예를들어 VO엔

 

 private String member
    
    private string id;
    private String password;
    private String createdate

 

이렇게 되어있는데

 

쿼리 작성시엔 아래와 같이 대소문자를 다르게 썻다던가

 

 

 

혹은 다른 이름을 썻다던가 할때 발생하는 에러이다.

 

 

해결방법

글쓴이는 데이터베이스의 컬럼명은 createdate였는데 쿼리의 변수는 createDate를 입력하여 문제가 발생하여, 

 

소문자로 변경해주니 해결 되었다.

++ 그외 상황 추가

쿼리의 #{데이터명}${테이터명}으로 오타를 혹시 치지 않았나 확인. 

 

이 500에러는 이유가 다양하지만 현재 name을 못찾는다는 There is no getter for property named 오류는 보통 "   " 안의 쿼리 오타로 비롯되는 것 같다. 유심히 빠트린 부분이 있는지, 대소문자 구분을 잘못하진 않았는지 혹은 오타가 있는지 다시 체크하고 실행해보자