java .lang.NullPointerException при получении данных из БД с использованием @Query весной JPA. Хотя запрос возвращает данные в MySql - PullRequest
0 голосов
/ 24 апреля 2020

Я пытаюсь получить данные из БД, используя пин-код и cityName, но получаю исключение нулевого указателя. Я пытался выполнить запрос в MySql. Возвращает правильный результат. pincode и cityName получают правильные параметры.

@Component
public interface GeoMasterDao extends PagingAndSortingRepository<GeoMaster, Long>,JpaSpecificationExecutor<GeoMaster>{

    @Query("select p from GeoMaster p where p.pincode =:pincode and p.cityName =:cityName")
    GeoMaster findByPincodeAndCityName(@Param("pincode") String pincode, @Param("cityName") String cityName);
}
@Entity
@Table(name = "geo_master")
@JsonIgnoreProperties("isBlocked")
@Getter
@Setter
public class GeoMaster extends AbstractEntity {

    @Column
    private String countryId;

    @Column
    private String districtId;

    @Column
    private String stateId;

    @Column
    private String pincode;

    @Column
    private String cityId;

    @Column
    private String cityName;

}

Я звоню с помощью GeoMaster gm = gmDao.findByPincodeAndCityName(pincode, cityName);, и здесь я получаю NullPointerException. findByPincodeAndCityName имеет правильные значения в параметрах.

1 Ответ

0 голосов
/ 24 апреля 2020

Исключение нулевого указателя, вероятно, происходит, потому что gmDao является нулем, а не какой-то проблемой с запросом. Вы должны убедиться, что ваш объект DAO правильно подключен автоматически. У вас должно быть что-то вроде этого:

@Autowired
public GeoMasterDao gmDao;

в классе, который выполняет запрос.

...