如何解释以下 Spring EL
How to interpretate following Spring EL
我是 Spring 框架的新手,正在尝试学习它。所以我找到了一些很好的视频教程来解释我觉得很好的。
有一部分我无法理解,但我认为与 Spring EL 有关,他在 Spring.
中与缓存注释一起使用
这是我看过的video
这是我想知道的代码部分。
@Override
@Transactional(
propagation = Propagation.REQUIRED,
readOnly = false)
@CachePut(
value = "greetings",
key = "#result.id")
public Greeting create(Greeting greeting) {
logger.info("> create");
if (greeting.getId() != null) {
logger.error(
"Attempted to create a Greeting, but id attribute was not null.");
throw new EntityExistsException(
"The id attribute must be null to persist a new entity.");
}
Greeting savedGreeting = greetingRepository.save(greeting);
logger.info("< create");
return savedGreeting;
}
我想知道他使用注释 @CachePut
并将 key
参数分配给 "#result.id"
的部分。在他解释的视频中,它与响应值的 ID 映射。这意味着缓存将保存 savedGreeting 的 ID。对吗?
它是如何工作的?我已经在 documentation 中查找 Spring EL,但也找不到相关信息。 Whosebug 上有人可能知道吗?
看看Spring Cache documentation。这列出了使用缓存注释时可用的关键字。基本上:#result
是方法的 return 值,可用于某些操作,如 @CachePut
.
这有意义吗?
我是 Spring 框架的新手,正在尝试学习它。所以我找到了一些很好的视频教程来解释我觉得很好的。
有一部分我无法理解,但我认为与 Spring EL 有关,他在 Spring.
中与缓存注释一起使用这是我看过的video
这是我想知道的代码部分。
@Override
@Transactional(
propagation = Propagation.REQUIRED,
readOnly = false)
@CachePut(
value = "greetings",
key = "#result.id")
public Greeting create(Greeting greeting) {
logger.info("> create");
if (greeting.getId() != null) {
logger.error(
"Attempted to create a Greeting, but id attribute was not null.");
throw new EntityExistsException(
"The id attribute must be null to persist a new entity.");
}
Greeting savedGreeting = greetingRepository.save(greeting);
logger.info("< create");
return savedGreeting;
}
我想知道他使用注释 @CachePut
并将 key
参数分配给 "#result.id"
的部分。在他解释的视频中,它与响应值的 ID 映射。这意味着缓存将保存 savedGreeting 的 ID。对吗?
它是如何工作的?我已经在 documentation 中查找 Spring EL,但也找不到相关信息。 Whosebug 上有人可能知道吗?
看看Spring Cache documentation。这列出了使用缓存注释时可用的关键字。基本上:#result
是方法的 return 值,可用于某些操作,如 @CachePut
.
这有意义吗?