Skip transaction/caching metadata retrieval for java.lang.Object methods

Also retrieves CacheConfig as merged annotation now, aligned with other caching annotations.

Issue: SPR-15296
This commit is contained in:
Juergen Hoeller
2017-02-28 13:08:55 +01:00
parent 8992f5924f
commit d4a1b59b4c
3 changed files with 11 additions and 4 deletions

View File

@@ -1,5 +1,5 @@
/*
* Copyright 2002-2016 the original author or authors.
* Copyright 2002-2017 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -82,6 +82,10 @@ public abstract class AbstractFallbackTransactionAttributeSource implements Tran
*/
@Override
public TransactionAttribute getTransactionAttribute(Method method, Class<?> targetClass) {
if (method.getDeclaringClass() == Object.class) {
return null;
}
// First, see if we have a cached value.
Object cacheKey = getCacheKey(method, targetClass);
Object cached = this.attributeCache.get(cacheKey);