code: @Transactional(readOnly = true)
      public Object load(Object key) {
          List<T> results = getJdbcTemplate().query(
                  getSelectSql(), getRowMapper(), getPrimaryKeyComponents(key));
          return results.size() == 0 ? null : results.get(0);
      }
docs: Load and return a single object from the data store.
  
  @param key entry key that can be used to find the object in the data
  store
  
  @return loaded object or null if the object for the specified key was not
  found