Плагин кеширования не кешируется - PullRequest
0 голосов
/ 03 декабря 2018

Не мог бы какой-нибудь мудрый гуру помочь мне заставить работать плагин Cache?Мне дали этот проект, который использует:

  • Grails 3.3.0
  • gradle 3.0
  • GORM 6.1.6. Выпуск
  • Cache Plugin4.0.0

Я слежу за https://grails -plugins.github.io / grails-cache / snapshot / guide / index.html # использование , чтобы включить кэширование черезПриложение может быть запущено без ошибок, метод, аннотированный @Cacheable, похоже, не кэшируется.Вот как выглядит мой myWebApp ** build.gradle **:

:
compile group: 'org.grails.plugins', name: 'cache', version: '4.0.0'
compile group: 'org.grails.plugins', name: 'async'
:

Это мой grails-app / conf / application.yml :

---
grails:
   cache:
      caches:
         name: 'mycache'
---

Вот так я включаю кеш в grails-app / conf / application.groovy :

:
grails.cache.enabled = true
grails.cache.clearAtStartup = true
:

Это мой myWebApp / Application.groovy :

package myWebApp
:

class Application extends GrailsAutoConfiguration {
   static void main(String[] args) {
      GrailsApp.run(Application, args)
   }
}

Это метод в контроллере с @Cachable (grails-app / controllers / data / mycontroller.groovy ):

package data
:
import org.springframework.cache.annotation.Cacheable
:
@Transactinal
class MyController {
   :
   @Cacheable(value='mycache')
   def getSomeId() {
      return anId
   }
:
}

В том жеконтроллер, я вызываю этот метод для быстрого тестирования:

:
   def index() {

      def id = getSomeId()
      :
   }
:

Проблема в том, что getSomeId (), похоже, не кешируется.Каждый раз, когда вызывался метод getSomeId (), тело выполнялось во всю длину (для проверки я установил точку останова).Я просто хочу использовать быстрый и простой механизм кэширования для простых вещей, подобных этому.Что я сделал не так?


Спасибо всем вам, ребята, кеш наконец-то работает в моем проекте.ОДНАКО, импорт для аннотации должен происходить из плагина: grails.plugin.cache.Cacheable работает, а org.springframework.annotation.Cacheable - нет.

...