@Cacheable(sync=true) only allows a single cache on

楔子

學習筆記,做個總結,希望不要誤導人。

@Cacheable(sync=true) only allows a single cache on

    @Cacheable(value = {"cahce:menu", "mu"}, key = "'sysMenu'", sync = true)//|https://cloud.tencent.com/developer/article/1497596
//代表 當前方法的結果需要緩存,如果緩存中有,方法不調用,如果緩存中沒有,查詢後彷如緩存
    @Override
    public List<MenuStream> getAllwithJ8Stream() {
        log.info("menu with java8stream  by  mysql db");
        // 使用java8 stream 封裝父子關係,來展示 ztree 標準JSON格式
        List<MenuStream> queryForList = jtemplate.query("select id,pId ,name,url,icon from t_menu", new BeanPropertyRowMapper(MenuStream.class));

        // 獲取取根節點
        List<MenuStream> collect = queryForList.stream().filter((menu) -> {
            return menu.getPid() == null;
        }).map((menu) -> {
            menu.setChildren(getChildren(menu, queryForList));
            return menu;
        }).sorted((m1, m2) -> {
            return m1.getId() - m2.getId();
        }).collect(Collectors.toList());
        System.out.println(collect);
        return collect;
    }

org.springframework.cache.interceptor.CacheAspectSupport.CacheOperationContexts#determineSyncFlag

在這裏插入圖片描述

 @Cacheable(value = {"cahce:menu", "mu"}, key = "'sysMenu'", sync = true
調整爲

 @Cacheable(value = {"cahce:menu"}, key = "'sysMenu'", sync = true
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章