Java 的免费开源跨平台内容备份引擎框架《EasyBackup》

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024b (备注Java)
img

正文

EasyBackup Job

Properties


easybackup.properties 是 EasyBackup 的核心配置文件,配置了内容备份所需的所有信息。

配置结构

EasyBackup Properties

全局配置(作为监控服务配置的全局默认值,可选)

# Backup ON or OFF, default is ON

备份服务默认是否打开,默认为 ON

easybackup.enable=ON

Backup trigger Cron-Expressions

备份服务的默认调度 Cron-Expressions; 默认为 ‘0 30 * * * ?’

easybackup.cronexpression=0 30 * * * ?

Directory to store the backup file

You can specify more than one, separated by a

文件备份目录,多个备份目录使用 ## 分隔

easybackup.dir=/user/backup/

backup file name under ‘easybackup.backup.dir’ directory

If not specified, the automatically generated file name is ‘targetFileName-yyyyMMddHHmmssS[.zip|tar|tar.gz]’

you can use variable: ${targetFileName}, ${name}, ${type}, ${value}, ${backuptime}, ${backupConfiguration.XXX}

在文件备份目录下的备份的文件名

默认为 ‘targetFileName-yyyyMMddHHmmssS[.zip|tar|tar.gz]’

可以使用以下变量:${targetFileName}, ${name}, ${type}, ${value}, ${backuptime?string(“yyyyMMddHHmmssS”)}, ${backupConfiguration.XXX}

easybackup.file=

Whether backup compression, default is OFF

默认是否使用压缩备份,默认为 OFF

easybackup.compress=OFF

Compression format: TAR(*.tar), ZIP(*.zip), GZIP(*.tar.gz), default is ZIP

压缩备份使用的压缩方式,默认为 ZIP

easybackup.compressType=ZIP

Comprssion encoding

压缩文件使用的编码格式

easybackup.compressEncoding=

Whether delete targetFile after backup complete, default is OFF

备份完成后,是否删除已备份的目标文件,默认为 OFF

easybackup.deleteTargetFile=OFF

Receive Backup file mail address

You can specify more than one, separated by a

接收备份信息的邮箱列表,多个邮箱使用 ## 分隔

easybackup.mail.receiver=yourmail@domain.com##youmail2@domai2.org

Send Mail Account Config

邮箱发送者账户配置

Send Mail Account

easybackup.mail.sender=sendermail@domain.com

Send Mail password

邮箱发送者密码

easybackup.mail.sender.passowrd=mailpassword

Send Mail SMTP host

邮箱发送者 host

easybackup.mail.sender.host=smtp.163.com

Send Mail SMTP port; default is 25

邮箱发送者 host 端口

easybackup.mail.sender.port=25

Send Mail Whether use SSL; default is false

是否使用了 SSL 协议

easybackup.mail.sender.ssl=false

Send Mail title

you can use variable: ${targetFileName}, ${name}, ${type}, ${value}, ${backuptime?datetime}, ${backupConfiguration.XXX}

邮件发送标题

可以使用以下变量:${targetFileName}, ${name}, ${type}, ${value}, ${backuptime?datetime}, ${backupConfiguration.XXX}

easybackup.mail.sender.title=Backup ${targetFileName}- EasyBackup

The send mail content freemarker template in template directory, default is ‘mail.tpl’

template 目录下的邮件发送模板,默认为 mail.tpl

easybackup.mail.sender.template=mail.tpl

Auto delete when send email complete ON or OFF, default is OFF

备份发送到邮箱后,是否删除备份文件,默认为 OFF

easybackup.mail.deleteBackup=OFF

Execute Command when backup before or after

You can specify more than one, separated by a

备份开始前或完成后执行的前置和后置命令脚本,多个命令脚本使用 ## 分隔

easybackup.cmd.before=

easybackup.cmd.after=

Execute Interceptor when backup before or after

You can specify more than one, separated by a

备份开始前或完成后执行的前置和后置处理类,多个类完全限定名使用 ## 分隔

easybackup.beforeClass=

easybackup.afterClass=

备份服务配置(可以覆盖全局配置的默认值)

  • file 文件备份服务配置

  • user 自定义备份服务配置

NAME 是自定义的监控服务名称,每个监控服务由一组相同 NAME 的配置项组成。

######################## Backup Service configuration

easybackup.[file|user].NAME=value

easybackup.[file|user].NAME.enable=ON | OFF

easybackup.[file|user].NAME.cronexpression=0/10 * * * * ?

easybackup.[file|user].NAME.dir=/user/backup/##/user/backup2

easybackup.[file|user].NAME.file=

easybackup.[file|user].NAME.compress=ON | OFF

easybackup.[file|user].NAME.compressType=ZIP | GZIP | TAR

easybackup.[file|user].NAME.compressEncoding=

easybackup.[file|user].NAME.deleteTargetFile=ON | OFF

easybackup.user.NAME.targetFileClass=package.YourTargetFile

easybackup.user.NAME.dirClass=package.YourBackupDir

easybackup.user.NAME.fileClass=package.YourBackupFile

easybackup.user.NAME.backupClass=package.YourBackup

easybackup.[file|user].NAME.cmd.before=/user/backupBefore.sh##/user/backupBefore2.sh

easybackup.[file|user].NAME.cmd.after=/user/backcAfter.sh##/user/backcAfter2.sh

easybackup.[file|user].NAME.beforeClass=package.BackupBefore##package.BackupBefore2

easybackup.[file|user].NAME.afterClass=package.BackupAfter##package.BackupAfter2

easybackup.[file|user].NAME.mail.receiver=receivermail@domain.com##receivermail1@domain.com

easybackup.[file|user].NAME.mail.sender=sendermail@domain.com

easybackup.[file|user].NAME.mail.sender.passowrd=sendermail_password

easybackup.[file|user].NAME.mail.sender.host=sendermail_host

easybackup.[file|user].NAME.mail.sender.port=sendermail_port

easybackup.[file|user].NAME.mail.sender.ssl=sendermail_ssh

easybackup.[file|user].NAME.mail.sender.title=sendermail_title

easybackup.[file|user].NAME.mail.sender.template=mail.tpl

easybackup.[file|user].NAME.mail.deleteBackup=ON | OFF

easybackup.[file|user].NAME.senders=package.userSenderClass##package.userSenderClass2

User 自定义配置说明

  • targetFileClass:获取目标文件的自定义处理类,需要实现 TargetFile 接口,默认为 cn.easyproject.easybackup.backup.file.impl.DefaultTargtFile

  • dirClass:获取备份目录的自定义处理类,需要实现 BackupDir 接口,默认为 cn.easyproject.easybackup.backup.file.impl.DefaultBackupDir

  • fileClass:获取备份文件名的自定义处理类,需要实现 BackupFile 接口,默认为 cn.easyproject.easybackup.backup.file.impl.DefaultBackupFile

  • backupClass:完成备份实现的处理类,需要实现 Badkup 接口,默认为cn.easyproject.easybackup.backup.impls.FileBackup

变量使用

  • 备份文件名配置

默认的备份文件名为 ${targetFileName}-yyyyMMddHHmmssS[.zip|tar|tar.gz],备份文件名可以包含以下 Freemarker 变量:

${targetFileName}:目标文件名

${type}:备份类型(FILE、USER)

${name}:备份服务名称

${value}:备份服务值

${backuptime?string(“yyyyMMddHHmmssS”)}:备份时间

${backupConfiguration.XXX}:备份配置对象属性

示例:

easybackup.file= t a r g e t F i l e N a m e − {targetFileName}- targetFileName{type}-${backuptime?string(“yyyyMMddHHmmss”)}.bkp

easybackup.[file|user].NAME.file=file-${backuptime?string(“yyyyMMddHHmmss”)}.bkp

  • 邮件标题配置

邮件标题可以包含以下 Freemarker 变量:

${targetFileName}:目标文件名

${backupFileName}:备份文件名

${type}:备份类型(FILE、USER)

${name}:备份服务名称

${value}:备份服务值

${backuptime?datetime}:备份时间

${backupConfiguration.XXX}:备份配置对象属性

示例:

easybackup.mail.sender.title=Backup ${targetFileName}- EasyBackup

easybackup.[file|user].NAME.sender.title=Backup ${targetFileName}- EasyBackup

完全配置示例


######################## Global Config(Optional) 全局配置(可选)

Backup ON or OFF, default is ON

备份服务默认是否打开,默认为 ON

easybackup.enable=ON

Backup trigger Cron-Expressions

备份服务的默认调度 Cron-Expressions; 默认为 ‘0 30 * * * ?’

easybackup.cronexpression=0 30 * * * ?

Directory to store the backup file

You can specify more than one, separated by a

文件备份目录,多个备份目录使用 ## 分隔

easybackup.dir=/user/backup/

backup file name under ‘easybackup.backup.dir’ directory

If not specified, the automatically generated file name is ‘targetFileName-yyyyMMddHHmmssS[.zip|tar|tar.gz]’

you can use variable: ${targetFileName}, ${name}, ${type}, ${value}, ${backuptime}, ${backupConfiguration.XXX}

在文件备份目录下的备份的文件名

默认为 ‘targetFileName-yyyyMMddHHmmssS[.zip|tar|tar.gz]’

可以使用以下变量:${targetFileName}, ${name}, ${type}, ${value}, ${backuptime?string(“yyyyMMddHHmmssS”)}, ${backupConfiguration.XXX}

easybackup.file=

Whether backup compression, default is OFF

默认是否使用压缩备份,默认为 OFF

easybackup.compress=OFF

Compression format: TAR(*.tar), ZIP(*.zip), GZIP(*.tar.gz), default is ZIP

压缩备份使用的压缩方式,默认为 ZIP

easybackup.compressType=ZIP

Comprssion encoding

压缩文件使用的编码格式

easybackup.compressEncoding=

Whether delete targetFile after backup complete, default is OFF

备份完成后,是否删除已备份的目标文件,默认为 OFF

easybackup.deleteTargetFile=OFF

Receive Backup file mail address

You can specify more than one, separated by a

接收备份信息的邮箱列表,多个邮箱使用 ## 分隔

easybackup.mail.receiver=yourmail@domain.com##youmail2@domai2.org

Send Mail Account Config

邮箱发送者账户配置

Send Mail Account

easybackup.mail.sender=sendermail@domain.com

Send Mail password

邮箱发送者密码

easybackup.mail.sender.passowrd=mailpassword

Send Mail SMTP host

邮箱发送者 host

easybackup.mail.sender.host=smtp.163.com

Send Mail SMTP port; default is 25

邮箱发送者 host 端口

easybackup.mail.sender.port=25

Send Mail Whether use SSL; default is false

是否使用了 SSL 协议

easybackup.mail.sender.ssl=false

Send Mail title

you can use variable: ${targetFileName}, ${name}, ${type}, ${value}, ${backuptime?datetime}, ${backupConfiguration.XXX}

邮件发送标题

可以使用以下变量:${targetFileName}, ${name}, ${type}, ${value}, ${backuptime?datetime}, ${backupConfiguration.XXX}

easybackup.mail.sender.title=Backup ${targetFileName}- EasyBackup

The send mail content freemarker template in template directory, default is ‘mail.tpl’

template 目录下的邮件发送模板,默认为 mail.tpl

easybackup.mail.sender.template=mail.tpl

Auto delete when send email complete ON or OFF, default is OFF

备份发送到邮箱后,是否删除备份文件,默认为 OFF

easybackup.mail.deleteBackup=OFF

Execute Command when backup before or after

You can specify more than one, separated by a

备份开始前或完成后执行的前置和后置命令脚本,多个命令脚本使用 ## 分隔

easybackup.cmd.before=

easybackup.cmd.after=

Execute Interceptor when backup before or after

You can specify more than one, separated by a

备份开始前或完成后执行的前置和后置处理类,多个类完全限定名使用 ## 分隔

easybackup.beforeClass=

easybackup.afterClass=

######################## Backup Service Configuration 监控配置

############ File Backup(can override global config)

format:

easybackup.file.NAME=value

easybackup.file.NAME.enable=ON | OFF

easybackup.file.NAME.cronexpression=0/10 * * * * ?

easybackup.file.NAME.dir=/user/backup/##/user/backup2

easybackup.file.NAME.file=

easybackup.file.NAME.compress=ON | OFF

easybackup.file.NAME.compressType=ZIP | GZIP | TAR

easybackup.file.NAME.compressEncoding=

easybackup.file.NAME.deleteTargetFile=ON | OFF

easybackup.file.NAME.cmd.before=/user/backupBefore.sh##/user/backupBefore2.sh

easybackup.file.NAME.cmd.after=/user/backcAfter.sh##/user/backcAfter2.sh

easybackup.file.NAME.beforeClass=package.BackupBefore##package.BackupBefore2

easybackup.file.NAME.afterClass=package.BackupAfter##package.BackupAfter2

easybackup.file.NAME.mail.receiver=receivermail@domain.com##receivermail1@domain.com

easybackup.file.NAME.mail.sender=sendermail@domain.com

easybackup.file.NAME.mail.sender.passowrd=sendermail_password

easybackup.file.NAME.mail.sender.host=sendermail_host

easybackup.file.NAME.mail.sender.port=sendermail_port

easybackup.file.NAME.mail.sender.ssl=sendermail_ssh

easybackup.file.NAME.mail.sender.title=sendermail_title

easybackup.file.NAME.mail.sender.template=mail.tpl

easybackup.file.NAME.mail.deleteBackup=ON | OFF

easybackup.file.NAME.senders=package.userSenderClass##package.userSenderClass2

Example:

easybackup.file.LOG=D:/log

easybackup.file.LOG.enable=ON

easybackup.file.LOG.dir=D:/backup/logfile/##E:/backup/logfile

easybackup.file.LOG.cronexpression=0 30 * * * ?

easybackup.file.LOG.compress=ON

easybackup.file.LOG.compressType=ZIP

#easybackup.file.LOG.mail.receiver=mail@domain.com

############ Port Monitor(can override global config)

format:

easybackup.user.NAME=value

easybackup.user.NAME.enable=ON | OFF

easybackup.user.NAME.cronexpression=0/10 * * * * ?

easybackup.user.NAME.dir=/user/backup/##/user/backup2

easybackup.user.NAME.file=

easybackup.user.NAME.compress=ON | OFF

easybackup.user.NAME.compressType=ZIP | GZIP | TAR

easybackup.user.NAME.compressEncoding=

easybackup.user.NAME.deleteTargetFile=ON | OFF

easybackup.user.NAME.targetFileClass=package.YourTargetFile

easybackup.user.NAME.dirClass=package.YourBackupDir

easybackup.user.NAME.fileClass=package.YourBackupFile

easybackup.user.NAME.backupClass=package.YourBackup

easybackup.user.NAME.cmd.before=/user/backupBefore.sh##/user/backupBefore2.sh

easybackup.user.NAME.cmd.after=/user/backcAfter.sh##/user/backcAfter2.sh

easybackup.user.NAME.beforeClass=package.BackupBefore##package.BackupBefore2

easybackup.user.NAME.afterClass=package.BackupAfter##package.BackupAfter2

easybackup.user.NAME.mail.receiver=receivermail@domain.com##receivermail1@domain.com

easybackup.user.NAME.mail.sender=sendermail@domain.com

easybackup.user.NAME.mail.sender.passowrd=sendermail_password

easybackup.user.NAME.mail.sender.host=sendermail_host

easybackup.user.NAME.mail.sender.port=sendermail_port

easybackup.user.NAME.mail.sender.ssl=sendermail_ssh

easybackup.user.NAME.mail.sender.title=sendermail_title

easybackup.user.NAME.mail.sender.template=mail.tpl

easybackup.user.NAME.mail.deleteBackup=ON | OFF

easybackup.user.NAME.senders=package.userSenderClass##package.userSenderClass2

Example:

easybackup.user.MySQL=mysqldump -uroot -proot demoDB

easybackup.user.MySQL.targetFileClass=cn.easyproject.easybackup.mysql.MySQLTargetFile

easybackup.user.MySQL.dir=D:/backup/##E:/backupdb

default targetFileName is ‘demoDB-yyyyMMddHHmmssS.sql’

you can use variable: ${targetFileName}, ${name}, ${type}, ${value}, ${backuptime?string(“yyyyMMddHHmmssS”)}, ${backupConfiguration.XXX}

最后

金三银四到了,送上一个小福利!

image.png

image.png

专题+大厂.jpg

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Java)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

p.user.MySQL.targetFileClass=cn.easyproject.easybackup.mysql.MySQLTargetFile

easybackup.user.MySQL.dir=D:/backup/##E:/backupdb

default targetFileName is ‘demoDB-yyyyMMddHHmmssS.sql’

you can use variable: ${targetFileName}, ${name}, ${type}, ${value}, ${backuptime?string(“yyyyMMddHHmmssS”)}, ${backupConfiguration.XXX}

最后

金三银四到了,送上一个小福利!

[外链图片转存中…(img-GME3iUcz-1713608982645)]

[外链图片转存中…(img-dQETlCNQ-1713608982646)]

[外链图片转存中…(img-loadufBZ-1713608982646)]

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Java)
[外链图片转存中…(img-W5asq0bZ-1713608982647)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值