2020-8-11 定时删除日志

本文介绍了如何在Java中实现定时删除日志的功能,主要针对数据库中的日志记录。作者选择在每天凌晨2点执行删除操作,删除30天前的日志。文章详细讲解了两个关键步骤:一是通过线程在项目启动时判断并执行删除任务;二是如何在SpringBoot中手动注入Service Bean来调用日志删除方法。作者通过这个实践学到了设置执行时间和手动注入Bean的技巧,并欢迎其他人分享更多实现方法。
摘要由CSDN通过智能技术生成

因为我的日志只记录了一些比较重要的操作,所以将日志保存在了数据库,但就算这样时间长了对数据库也会造成比较大的压力,所以需要定期删除一部分日志文件,我的想法是在每天凌晨2点删除,每天删除一次,删除30天前生成的日志记录。

实现这个操作有两个重要的地方:

实际操作时最好先实现第二部分,因为第一部分需要使用第二部分的方法注入bean。

1、java怎么定时

    我是采用线程的方法,创建一个线程,在项目启动的时候判断今天有没有错过删除时间,如果错过了,就sleep到明天的执行时间,如果没有错过,还没有到删除时间,就sleep到删除时间。如果项目启动后正好在删除时间的前后一秒内,就删除日志,休眠24h。

package com.fh;

import com.fh.service.BuyerService;
import com.fh.util.Book3;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

import java.util.Date;

/**
 * Hello world!
 *
 */
@SpringBootApplication
public class App
{
    public static void main( String[] args )
    {
        SpringApplication.run(App.class);
        System.out.println( "项目启动完成" );

        Timer timer = new Timer();
        Thread timeThread &
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值