@Override
    public Owner findById(int id) {
        Owner owner;
        try {
            owner = this.jdbcClient.sql("""
                    SELECT id, first_name, last_name, address, city, telephone
                    FROM owners WHERE id = :id
                    """)
                .param("id", id)
                .query(BeanPropertyRowMapper.newInstance(Owner.class))
                .single();
        } catch (EmptyResultDataAccessException ex) {
            throw new ObjectRetrievalFailureException(Owner.class, id);
        }
        loadPetsAndVisits(owner);
        return owner;
    }
Loads the {@link Owner} with the supplied <code>id</code>; also loads the {@link Pet Pets} and {@link Visit Visits}
for the corresponding owner, if not already loaded.
src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java