ali*_*ele 4 java spring spring-data
有什么办法可以将枚举值放在Spring Data的方法名称中?可以使用以下@Query注释来完成:
@Query("select t from Ticket as t where t.status != desk.enums.TicketStatus.CLOSED")
List<Ticket> findActiveTickets();
Run Code Online (Sandbox Code Playgroud)
status是枚举。但是,仅使用方法名称怎么办呢?使用类似的东西List<Ticket> findByStatusIsNotClosed();会导致No property isNotClosed found for type TicketStatus。
那么,不用它怎么办@Query呢?
如果您使用的是Java 8,则可以default在界面中使用关键字来委派给更通用的方法。
default List<Ticket> findActiveTickets() {
return findByTicketStatusNotIn(ImmutableList.of(TicketStatus.CLOSED));
}
List<Ticket> findByTicketStatusNotIn(List<TicketStatus> status);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1677 次 |
| 最近记录: |