[英]java.lang.NullPointerException while getting data from db using @Query in spring JPA. Though query returns data in MySql
I am trying to get data from DB using pincode and cityName but I am getting null pointer exception.我正在尝试使用 pincode 和 cityName 从 DB 获取数据,但出现 null 指针异常。 I tried to run the query in MySql.
我尝试在 MySql 中运行查询。 It returns correct result.
它返回正确的结果。 pincode and cityName are getting correct parameters.
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;
}
I am calling it using GeoMaster gm = gmDao.findByPincodeAndCityName(pincode, cityName);
我使用
GeoMaster gm = gmDao.findByPincodeAndCityName(pincode, cityName);
调用它and here I am getting NullPointerException.在这里我得到 NullPointerException。 findByPincodeAndCityName is having correct values in parameters.
findByPincodeAndCityName 的参数值正确。
The null pointer exception is probably happening because gmDao
is null, rather than some problem with the query. null 指针异常可能是因为
gmDao
是 null 而不是查询有问题。 You should check to make sure that your DAO object is being autowired correctly.您应该检查以确保您的 DAO object 正在正确自动接线。 You should have something like this:
你应该有这样的东西:
@Autowired
public GeoMasterDao gmDao;
in the class which is executing the query.在执行查询的 class 中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.