Spring data - lista todas as rotinas de um perfil

Boa tarde.

Tenho as classes Rotinas e Perfil, onde as mesma possuem um relacionamento n x n, preciso fazer uma consulta usando o spring data que list todas as rotina de um prefil, tentei de varias formas, mas sem sucesso. segue abaico as duas classes.

@Entity
@Table(name = "perfil")
public class Perfil implements Serializable {

	private static final long serialVersionUID = -5594956718599379597L;

	@Id
	@GeneratedValue(strategy = GenerationType.AUTO)
	private int id;

	@Column(length = 60, nullable = false)
	private String nome;

	@Column(length = 100, nullable = false)
	private String descricao;

	@Column(length = 100, nullable = false)
	private String imagem;

	@ManyToMany(fetch = FetchType.LAZY)
	@JoinTable(name = "usuario_perfil", joinColumns = @JoinColumn(name = "usuario_id", referencedColumnName = "id"), inverseJoinColumns = @JoinColumn(name = "perfil_id", referencedColumnName = "id"))
	private List<Usuario> usuarios;

	@ManyToMany(fetch = FetchType.EAGER)
	@JoinTable(name = "perfil_rotina", joinColumns = @JoinColumn(name = "rotina_id", referencedColumnName = "id"), inverseJoinColumns = @JoinColumn(name = "perfil_id", referencedColumnName = "id"))
	private List<Rotina> rotinas;

// methodo get e set
}
@Entity
@Table(name = "rotina")
public class Rotina implements Serializable {

	private static final long serialVersionUID = 8724103892548378330L;

	@Id
	@GeneratedValue(strategy = GenerationType.AUTO)
	@Column(name = "id")
	private int id;

	@Column(length = 60, nullable = false)
	private String nome;

	@Column(length = 100, nullable = false)
	private String descricao;

	@Column(length = 100, nullable = false)
	private String acao;

	@Column(length = 100, nullable = false)
	private String imagem;

	@ManyToMany(fetch = FetchType.LAZY)
	@JoinTable(name = "perfil_rotina", joinColumns = @JoinColumn(name = "rotina_id", referencedColumnName = "id"), inverseJoinColumns = @JoinColumn(name = "perfil_id", referencedColumnName = "id"))
	private List<Perfil> perfis;

// methodo get e set
public interface RotinaRepositorio extends JpaRepository<Rotina, Integer> {

	// ADD 
       public List<Rotinas> listarRotinasPorPerfil(@Param("idPerfil") int idPerfil)
			throws NoResultException;
      

}
SELECT * FROM rotina i, perfil_rotina b
where i.id = b.rotina_id
and perfil_id = 2

Esse seria o select que retorna os dados que preciso, tentei usar sql com spring data, mas nao consegui alguem tem um exemplo ou uma dica ?

Valeu…