src/main/java/com/seanchenxi/gwt/storage/client/StorageExt.java
public <T> T get(StorageKey<T> key) throws SerializationException {
    T item = cache.get(key);
    if (item == null) {
      item = StorageUtils.deserialize(key.getClazz(), storage.getItem(key.name()));
      cache.put(key, item);
    }
    return item;
  }
public <T> T get(StorageKey<T> key) throws SerializationException {
    T item = cache.get(key);
    if (item == null) {
      item = StorageUtils.deserialize(key.getClazz(), storage.getItem(key.name()));
      cache.put(key, item);
    }
    return item;
  }
Returns the value in the Storage associated with the specified key,
or {@code null} if this Storage contains no mapping for the key.
<p>
Note : Deserialization will be performed to return a correct value type. <br/>
{@link StorageKeyFactory} is preferred to get a {@link StorageKey} instance for primitive types.
</p>

@param key the key to a value in the Storage
@param <T> the type of stored value
@return the value associated with the given key
@throws SerializationException
@see <a href="http://www.w3.org/TR/webstorage/#dom-storage-getitem">W3C Web
Storage - Storage.getItem(k)</a>