文档章节

后台配置banner,前台能及时获取的实现

尼克air
 尼克air
发布于 2017/02/13 21:40
字数 169
阅读 35
收藏 0

通过@PostConstruct 和 @PreDestroy 方法 实现初始化和销毁bean之前进行的操作。项目启动的时候使用一个类似自定义缓存的map,用来读取数据库配置,后面每五分钟查询一次数据库,可以做到不重启服务配置banner的效果。

//存储状态正常的banner 
private Map<Integer, BannerDo> enableCacheMap;
@PostConstruct
private void init() {
    enableCacheMap = Maps.newConcurrentMap();
    build();
}
@Override
public MimiResult<List<BannerDo>> getEnableBannerList() {
    MimiResult<List<BannerDo>> result = MimiResult.newResult();
    if (enableCacheMap != null && !enableCacheMap.isEmpty()) {
        result.setObject(Lists.newArrayList(enableCacheMap.values()));
    }
    return result;
}
@Scheduled(cron = "0 0/5 * * * ?")
private void schedule() {
    enableCacheMap.clear();
    build();
}
private void build() {
    BannerQueryOption option = new BannerQueryOption();
    option.setState(EnableState.ENABLE.getState());
    List<BannerDo> bannerDos = bannerMapper.queryBanners(option);
    if (CollectionUtils.isNotEmpty(bannerDos)) {
        for (BannerDo bannerDo : bannerDos) {
            enableCacheMap.put(bannerDo.getId(), bannerDo);
        }
    }
}

© 著作权归作者所有

共有 人打赏支持
尼克air
粉丝 4
博文 20
码字总数 13259
作品 0
杭州
程序员
私信 提问
Exrick/3D-Banner

3D-Banner 基于Vue开发的3D轮播图组件 在线Demo:http://xmall.exrick.cn/ 高仿锤子商城官网轮播图,3D视差效果,实现后台可灵活配置,定时自动轮播 原作者 qingjin ; 二次开发 yucccc ; 本作...

Exrick
2018/04/21
0
0
android中左右滑屏的实现(广告位banner组件)

原理 参见下图。整个组件是一个FrameLayout,里面有两个view,第一个是LinearLayout,承载了4个(或多个)可以滑动的view,见图中绿色背景的部分;第二个是一个RelativeLayout,在其底部放置...

长平狐
2013/12/25
95
0
android中左右滑屏的实现(广告位banner组件)

原理 参见下图。整个组件是一个FrameLayout,里面有两个view,第一个是LinearLayout,承载了4个(或多个)可以滑动的view,见图中绿色背景的部分;第二个是一个RelativeLayout,在其底部放置...

长平狐
2013/12/25
5.9K
0
NGOOS 2.1 正式发布:全新的前后端展示

NGOOS2.1主要针对界面的风格、功能进行了优化调整,给用户带来全新的操作与体验。NGOOS2.1在TYPO3开源框架的基础上进行开发,TYPO3的内核升级到了8.7.18版本,新闻、DCE、POWERMAIL、相册等插...

极益科技
2018/08/31
1K
4
如何设置电子商务公共服务平台的首页轮播图

设置方法。 1)进入商城管理后台 2)点击进入 广告管理 3)点击进入 广告位置 4)添加一个广告位置,比如 emall_system_index_banner 5)点击进入 广告列表 6)点击右上角 添加 7)在打开的页面填写...

高公子
2016/05/24
3
0

没有更多内容

加载失败,请刷新页面

加载更多

安卓constraintLayout中app:srcCompat设置的图片显示不出来

使用 app:srcCompat 的时候 引入的图片显示不出来的解决方案 首先查看的你的Activity 继承的是那个Activity 如果是继承AppcompatActivity 使用 ImageView的 app:srcCompat 是没有问题的 如果...

雨焰
40分钟前
1
0
MySQL mysqldump数据导出详解

MySQL mysqldump数据导出详解 2016-04-07 11:14 by pursuer.chen, 114348 阅读, 0 评论, 收藏, 编辑 介绍 在日常维护工作当中经常会需要对数据进行导出操作,而mysqldump是导出数据过程中使用...

linjin200
41分钟前
0
0
Lucene 检索时的步骤

用户输入查询语句:lucene AND learned NOT hadoop 搜索主要分为以下几步 第一步、对查询语句进行词法分析,语法分析,及语言处理 词法分析主要用来识别单词和关键字 语法分析主要是根据查询...

kdy1994
41分钟前
2
0
Gradle Implementation vs API configuration

注: 可以把 Implementation理解为java类的private, 使用Implementation则外部依赖本库的代码引用不到本库Implementation的代码, 也就是降低依赖树的层级, 这样就可以避免外部代码编译时候, 导...

SuShine
45分钟前
2
0
pdf安卓手机适配以及ie的兼容 以及隐藏掉下载打印按钮的方式

这是我目前遇到pdf方面最多的问题。 在百度上搜了很多答案,结果都是建议使用插件。而目前百度能搜的插件基本上都是有缺陷的。自己测试了很多插件。最后使用了pdf.js这个插件。这个插件目前完...

流年那么伤
51分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部