No Spring Data 1.7.1.RELEASE, você pode fazer isso de duas maneiras diferentes,
1) A nova maneira , usando a derivação de consulta para consultas de contagem e exclusão. Leia isto (Exemplo 5). Exemplo,
public interface UserRepository extends CrudRepository<User, Integer> {
Long countByName(String name);
}
2) Da maneira antiga , usando a anotação @Query.
Exemplo,
public interface UserRepository extends CrudRepository<User, Integer> {
@Query("SELECT COUNT(u) FROM User u WHERE u.name=?1")
Long aMethodNameOrSomething(String name);
}
ou usando a anotação @Param também,
public interface UserRepository extends CrudRepository<User, Integer> {
@Query("SELECT COUNT(u) FROM User u WHERE u.name=:name")
Long aMethodNameOrSomething(@Param("name") String name);
}
Verifique também esta resposta .