mongoTemplate条件查询报错

mongoTemplate条件查询时报属性匹配异常信息:Caused by: java.lang.IllegalAccessError: tried to access class org.springframework.beans.PropertyMatches from class org.springframework.data.mapping.PropertyReferenceException

先看代码:

//查询MongoDB中最新的一条数据信息,Device是mongo中映射类
public List<Device> getMongo(){
    
    
		Query mongoQuery = new Query();
		//update_time倒序查询
		Sort sort = new Sort(Sort.Direction.DESC,"update_time");
		//分页查询
		PageRequest pageRequest = new PageRequest(0,2);
		mongoQuery.with(sort);
		mongoQuery.with(pageRequest);
		List<Device> deviceList = mongoTemplate.find(mongoQuery, Device.class);
		return deviceList;
	}

解决方案:在mongo中“update_time”数据类型是string,这里不能排序,这里改用 id 进行排序,修改后的代码

public List<Device> getMongo(){
    
    
		Query mongoQuery = new Query();
		//update_time倒序查询
		Sort sort = new Sort(Sort.Direction.DESC,"id");
		//分页查询
		PageRequest pageRequest = new PageRequest(0,2);
		mongoQuery.with(sort);
		mongoQuery.with(pageRequest);
		List<Device> deviceList = mongoTemplate.find(mongoQuery, Device.class);
		return deviceList;
	}

猜你喜欢

转载自blog.csdn.net/ybsgsg/article/details/127084272
今日推荐