How can I store HashMap in Redis

ساخت وبلاگ

Vote count: 0

I have to store an object in Redis use Spring Redis. The Object is

@RedisHash(value = "shoppingcart")
public class ShoppingCart { @Id private String cartGuid; private Map> promotionProductMap = new LinkedHashMap>(); private LinkedList cartItems = new LinkedList<>();
....
},>,>

CartItemDto look like this

public class CartItemDto implements Serializable { private static final long serialVersionUID = -7047005024550867744L; private String cartItemId; private Long productId;
...
}

I have an repository to save into Redis

@Repository
public interface ShoppingCartRepository extends CrudRepository {
},>

But when I tried to store shoppingCart by

shoppingCartRepository.save(shoppingCart);

It throw Exception

Caused by: java.lang.IllegalArgumentException: Target bean of type java.util.LinkedList is not of type of the persistent entity (com.test.CartItemDto)! at org.springframework.util.Assert.isTrue(Assert.java:68) ~[spring-core-4.3.4.RELEASE.jar:4.3.4.RELEASE] at org.springframework.data.mapping.model.BasicPersistentEntity.getPropertyAccessor(BasicPersistentEntity.java:397) ~[spring-data-commons-1.12.5.RELEASE.jar:?] at org.springframework.data.redis.core.convert.PathIndexResolver.doResolveIndexesFor(PathIndexResolver.java:92) ~[spring-data-redis-1.7.5.RELEASE.jar:?] at org.springframework.data.redis.core.convert.PathIndexResolver.access$000(PathIndexResolver.java:50) ~[spring-data-redis-1.7.5.RELEASE.jar:?] at org.springframework.data.redis.core.convert.PathIndexResolver$1.doWithPersistentProperty(PathIndexResolver.java:115) ~[spring-data-redis-1.7.5.RELEASE.jar:?] at org.springframework.data.redis.core.convert.PathIndexResolver$1.doWithPersistentProperty(PathIndexResolver.java:95) ~[spring-data-redis-1.7.5.RELEASE.jar:?] at org.springframework.data.mapping.model.BasicPersistentEntity.doWithProperties(BasicPersistentEntity.java:312) ~[spring-data-commons-1.12.5.RELEASE.jar:?] at org.springframework.data.redis.core.convert.PathIndexResolver.doResolveIndexesFor(PathIndexResolver.java:95) ~[spring-data-redis-1.7.5.RELEASE.jar:?] at org.springframework.data.redis.core.convert.PathIndexResolver.resolveIndexesFor(PathIndexResolver.java:79) ~[spring-data-redis-1.7.5.RELEASE.jar:?] at org.springframework.data.redis.core.convert.MappingRedisConverter.write(MappingRedisConverter.java:357) ~[spring-data-redis-1.7.5.RELEASE.jar:?] at org.springframework.data.redis.core.convert.MappingRedisConverter.write(MappingRedisConverter.java:109) ~[spring-data-redis-1.7.5.RELEASE.jar:?] at org.springframework.data.redis.core.RedisKeyValueAdapter.put(RedisKeyValueAdapter.java:183) ~[spring-data-redis-1.7.5.RELEASE.jar:?] at org.springframework.data.keyvalue.core.KeyValueTemplate$1.doInKeyValue(KeyValueTemplate.java:168) ~[spring-data-keyvalue-1.1.5.RELEASE.jar:?] at org.springframework.data.keyvalue.core.KeyValueTemplate$1.doInKeyValue(KeyValueTemplate.java:158) ~[spring-data-keyvalue-1.1.5.RELEASE.jar:?] at org.springframework.data.keyvalue.core.KeyValueTemplate.execute(KeyValueTemplate.java:377) ~[spring-data-keyvalue-1.1.5.RELEASE.jar:?] ... 156 more

If I remove promotionProductMap, it can save shoppingCart I don't know why it can't save Hashmap, with List it can Anyone know how can I save a Hashmap to Redis?

asked 24 secs ago

back soft...
ما را در سایت back soft دنبال می کنید

برچسب : نویسنده : استخدام کار backsoft بازدید : 330 تاريخ : پنجشنبه 21 ارديبهشت 1396 ساعت: 11:15