十一、springboot 配置log4j2以及打包成zip文件

org.springframework.boot

spring-boot-starter-log4j2

编写log4j2.xml


${sys:user.dir}/logs

zlflovemm_log

zlflovemm__error

<RollingRandomAccessFile name=“infolog”

fileName=“ M t n o W e b R o o t / {MtnoWebRoot}/ MtnoWebRoot/{INFO_FILE}.log”

filePattern=“ M t n o W e b R o o t / {MtnoWebRoot}/ MtnoWebRoot/{INFO_FILE}-%d{yyyy-MM-dd}-%i.log”>

<PatternLayout

pattern=“%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] [%X{sessionID}] [%X{imei}] %-5level %logger{36} - %msg%n” />

<RollingRandomAccessFile name=“errorlog”

fileName=“ M t n o W e b R o o t / {MtnoWebRoot}/ MtnoWebRoot/{ERROR_FILE}.log”

filePattern=“ M t n o W e b R o o t / {MtnoWebRoot}/ MtnoWebRoot/{ERROR_FILE}-%d{yyyy-MM-dd}-%i.log”>

<PatternLayout

pattern=“%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n” />

上面配置的是生成日志的格式,大家可以自行修改。以及配置了单个日志文件最大为200M ,只保留最近30天的文件。

application.properties 配置


#日志配置

logging.config=classpath:log4j2.xml

debug=false

实现上面这三步,就轻松的在项目中使用log4j日志啦。

打包外置配置文件

=======================================================================

上面配置的日志,先不测试了,等这个打包的配置也配置好了,再来一起测试。

如果我们直接使用自带的mvn package 的话,会将我们依赖的jar 包已经配置文件统统打包成可运行的jar 文件。这样虽然方便,但是这样的话每次都需要重新打包,并且传输起来比较麻烦,所以我们就需要将lib 和配置文件从jar 文件中分离。这样项目修改了,只需要替换一下比较小的部分就可以了。

pom.xml 修改


打开我们的pom.xml 文件,最下面我们的中我们加入如下代码。因为我们的项目之前加入了打包成docker 镜像,所以整个的都贴出来,不需要打包成docker的可以去掉。

src/main/resources

p r o j e c t . b u i l d . d i r e c t o r y {project.build.directory} project.build.directory{file.separator}classes

src/main/java

**/*.xml

true

org.apache.maven.plugins

maven-compiler-plugin

1.8

1.8

UTF-8

true

org.apache.maven.plugins

maven-jar-plugin

true

lib

com.quellan.zlflovemm.ZlflovemmApplication

./

config/**

/**/*.xml

/**/*.properties

maven-assembly-plugin

false

src/main/build/package.xml

make-assembly

package

single

com.spotify

docker-maven-plugin

1.0.0

build-image

package

build

d o c k e r . i m a g e . p r e f i x / {docker.image.prefix}/ docker.image.prefix/{project.artifactId}😒{project.version}

${project.version}

src/main/docker

http://127.0.0.1:2375

/

${project.build.directory}

${project.build.finalName}.jar

需要注意的是,如下两个地方,第一个di地方需要需改成我们自己项目的启动类。第二个地方需要配置我们的package.xml 文件路径。内容我们待会讲。

file

package.xml


我们在pom.xml 中配置好了后,我们在src/main 目录下创建一个build 包,早build 目录下创建package.xml 文件。路径就是上面配置的,大家可以按照自己的喜好来。

内容如下:

<?xml version="1.0" encoding="UTF-8"?>

<assembly xmlns=“http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3” xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”

xsi:schemaLocation=“http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3 http://maven.apache.org/xsd/assembly-1.1.3.xsd”>

package

zip

false

bin

${file.separator}

src/main/resources

${file.separator}

static/**

templates/**

${project.build.directory}

${file.separator}

*.jar

true

lib

runtime

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

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

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

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

总结

以上是字节二面的一些问题,面完之后其实挺后悔的,没有提前把各个知识点都复习到位。现在重新好好复习手上的面试大全资料(含JAVA、MySQL、算法、Redis、JVM、架构、中间件、RabbitMQ、设计模式、Spring等),现在起闭关修炼半个月,争取早日上岸!!!

下面给大家分享下我的面试大全资料

  • 第一份是我的后端JAVA面试大全

image.png

后端JAVA面试大全

  • 第二份是MySQL+Redis学习笔记+算法+JVM+JAVA核心知识整理

字节二面拜倒在“数据库”脚下,闭关修炼半个月,我还有机会吗?

MySQL+Redis学习笔记算法+JVM+JAVA核心知识整理

  • 第三份是Spring全家桶资料

字节二面拜倒在“数据库”脚下,闭关修炼半个月,我还有机会吗?

MySQL+Redis学习笔记算法+JVM+JAVA核心知识整理
《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!
" />

总结

以上是字节二面的一些问题,面完之后其实挺后悔的,没有提前把各个知识点都复习到位。现在重新好好复习手上的面试大全资料(含JAVA、MySQL、算法、Redis、JVM、架构、中间件、RabbitMQ、设计模式、Spring等),现在起闭关修炼半个月,争取早日上岸!!!

下面给大家分享下我的面试大全资料

  • 第一份是我的后端JAVA面试大全

[外链图片转存中…(img-7Vu8ahGV-1712406323799)]

后端JAVA面试大全

  • 第二份是MySQL+Redis学习笔记+算法+JVM+JAVA核心知识整理

[外链图片转存中…(img-IQ485vqt-1712406323799)]

MySQL+Redis学习笔记算法+JVM+JAVA核心知识整理

  • 第三份是Spring全家桶资料

[外链图片转存中…(img-YGMuihNT-1712406323800)]

MySQL+Redis学习笔记算法+JVM+JAVA核心知识整理
《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!

  • 11
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值