我有一个使用Spring Boot 1.5.1和Spring Data Rest的数据库服务.我将我的实体存储在MySQL数据库中,并使用Spring的PagingAndSortingRepository通过REST访问它们.我发现this声明支持按嵌套参数排序,但我找不到按嵌套字段排序的方法.
我有这些课程:
@Entity(name = "Person")@table(name = "PERSON")public class Person { @ManyToOne protected Address address; @ManyToOne(targetEntity = name.class,cascade = { CascadeType.ALL }) @JoinColumn(name = "name_PERSON_ID") protected name name; @ID protected Long ID; // Setter,getters,etc.}@Entity(name = "name")@table(name = "name")public class name{ protected String firstname; protected String lastname; @ID protected Long ID; // Setter,etc.}
例如,使用该方法时:
Page
调用URI http://localhost:8080/people/search/findByAddress_Id?id=1&sort=name_lastName,desc时,Spring完全忽略sort参数.
参数sort = name.lastname和sort = nameLastname也不起作用.
我是否构成了Rest请求错误,或者缺少某些配置?
谢谢!
最佳答案我通过调试,看起来像Alan提到的问题.我找到了可能有用的解决方法:
创建自己的控制器,注入您的仓库和可选的投影工厂(如果您需要投影).实现get方法以委托对您的存储库的调用
@RestController @RequestMapPing("/people") public class PeopleController { @autowired PersonRepository repository; //@autowired //PagedResourcesAssembler
这适用于2.6.8.RELEASE;问题似乎在所有版本中. 总结
以上是内存溢出为你收集整理的Spring Data Rest – 按嵌套属性排序全部内容,希望文章能够帮你解决Spring Data Rest – 按嵌套属性排序所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)