栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

SpringBoot Mongo 动态分表 动态修改表名

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SpringBoot Mongo 动态分表 动态修改表名

前言

为什么分表?
mongo记录请求日志,由于业务的扩展,日志越来越多,导致mongo日志文件越大,导致查询特别慢。话不多说,直接上代码


一、使用步骤
	 //    mongo 表名
    public static final List MONGO_SUBMASTER_LIST = Arrays.asList("requestLog");
    
    @Autowired
    private MongoTemplate mongoTemplate;
    
    public void test(){
       MongoDatabase db = mongoTemplate.getDb();
       String dbName = db.getName();
       int dateInt = DateUtil.getDateInt(DateUtil.getBeforeMonth(0));//获取一个月份值 yyyyMMdd
       MongoCollection dbCollection;
       for (String tableName : MONGO_SUBMASTER_LIST) {
           dbCollection = db.getCollection(tableName);
           dbCollection.renameCollection(new MongoNamespace(dbName + "." + tableName + "_" + dateInt), new RenameCollectionOptions().dropTarget(true));
       }
   }

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/878308.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号