网站展示模板免费下载wordpress不能上传图片

张小明 2025/12/30 23:52:11
网站展示模板免费下载,wordpress不能上传图片,网络服务器,网站开发 图片储存文章目录概述Ⅰ. 什么是 Spring Boot 配置文件Ⅱ. properties 配置文件#xff1a;Value PostConstructⅢ. yml 配置文件一、配置不同数据类型二、Map#xff08;字典 / 键值对#xff09;三、List#xff08;集合 / 数组#xff09;✅ 简单列表✅ 列表中的 Ma…文章目录概述Ⅰ. 什么是 Spring Boot 配置文件Ⅱ. properties 配置文件Value PostConstructⅢ. yml 配置文件一、配置不同数据类型二、Map字典 / 键值对三、List集合 / 数组✅ 简单列表✅ 列表中的 Map✅ Map 中包含 List四、ConfigurationProperties 读取 Map 和 ListⅣ. 日志级别的分类Ⅴ. 日志配置一、配置日志级别二、日志持久化配置日志文件名配置日志的存储目录使用 logback-spring.xml 配置日志Ⅵ. 配合 lombok 进行日志输出概述.properties文件以键值类型配置而.yml文件采用树形配置方式。读取配置文件内容使用Value注解注解内使用${}的格式读取对应内容。yml层级之间严格使用换行缩进的方式配置key和value之间使用冒号加空格的方式设置并且空格不可省略。properties作为早期并且默认的配置文件格式其配置存在一定的冗余数据而使用yml可以很好的解决数据冗余的问题但不适合复杂配置。yml可以和properties共存如果存在冲突的内容优先读取properties文件中的内容。Ⅰ. 什么是 Spring Boot 配置文件Spring Boot支持并定义了配置文件的格式也在另一个层面达到了规范其他框架集成到Spring Boot的目的。很多项目或者框架的配置信息也放在配置文件中比如项目的启动端口Spring Boot内置了Tomcat服务器默认端口号是8080但是用户电脑上8080端口号有可能就被其他应用程序占用了所以Spring Boot需要支持让用户自定义端口号。数据库的连接信息包含用户名和密码的设置为了更方便简单的访问数据库出现了一些持久层框架其实就是对JDBC进行了更深层次的封装。让用户通过简单几行代码就可完成数据库的访问。但是不同的应用程序访问的数据库不同这些持久层框架就需要支持用户可以自定义配置数据库的连接信息。第三方系统的调用密钥等信息用于发现和定位问题的普通日志和异常日志等Spring Boot配置文件有以下三种application.propertiesapplication.yml是 yaml 的简写application.yaml当应用程序启动时Spring Boot会自动从classpath路径找到并加载application.properties和application.yaml或者application.yml文件。也可以通过spring.config.name指定文件路径和名称参考https://docs.spring.io/spring-boot/reference/features/external-config.html#features.external-config.filesⅡ.properties配置文件ValuePostConstruct官方配置文档基本的语法是键值对的形式键值对之间用隔开如下所示# 配置项⽬端⼝号 server.port9090 #配置数据库连接信息 spring.datasource.urljdbc:mysql://127.0.0.1:3306/testdb?characterEncodingutf8useSSLfalse spring.datasource.usernameroot spring.datasource.passwordroot读取的时候使用Value注解搭配${}格式读取如下所示Controllerpublicclassdemo1{Value(${spring.datasource.url})privateStringurl;Value(${spring.datasource.username})privateStringname;// 不需要和键同名Value(${spring.datasource.password})privateStringpasswd;// 不需要和键同名PostConstructpublicvoidinit(){System.out.println(url);System.out.println(name);System.out.println(passwd);}}PostConstruct注解的方法会在当前Bean被Spring完全初始化之后自动执行一次常用于初始化逻辑。执行顺序如下所示static代码块类加载时 → 构造方法 → 依赖注入 → PostConstruct - Bean ready注意static代码块是在类加载阶段就执行的比PostConstruct要早得多。Ⅲ.yml配置文件yml是树形结构的配置文件它的基础语法是key: value其中key和value之间使用英文冒号加空格的方式组成并且空格不可省略spring:datasource:url:jdbc:mysql://127.0.0.1:3306/testdb?characterEncodingutf8useSSLfalseusername:rootpassword:root#正确的配置方式mykey1:java#错误的配置方式❌mykey2:java注意value值默认不用加上单引号或者双引号。yml读取配置的方式和properties相同使用Value注解即可如下所示Controllerpublicclassdemo2{Value(${spring.datasource.url})privateStringurl;Value(${spring.datasource.username})privateStringname;// 不需要和键同名Value(${spring.datasource.password})privateStringpasswd;// 不需要和键同名Value(${mykey1})privateStringmykey;// 不需要和键同名PostConstructpublicvoidinit(){System.out.println(url);System.out.println(name);System.out.println(passwd);System.out.println(mykey);}}一、配置不同数据类型注意对应的类型在java后端接收的时候要使用对应的类型接收不然容易出现类型不匹配的错误# 字符串string.value:Hello# 布尔值true或falseboolean.value1:trueboolean.value2:false# 整数int.value:10# 浮点数float.value:3.14159# Null用表示null.value:~# 空字符串# 虽然直接后面什么都不加就可以了但这种方式不直观更多的表示是使用引号括起来empty.value:二、Map字典 / 键值对YAML 中的Map表示的是一组key: value键值对和 Java 的MapString, Object类似。database:host:localhostport:3306username:rootpassword:123456可以理解为{database:{host:localhost,port:3306,username:root,password:123456}}三、List集合 / 数组YAML 中的List是通过-短横线表示的。✅ 简单列表fruits:-apple-banana-orange相当于{fruits:[apple,banana,orange]}✅ 列表中的 Mapservers:-name:server1ip:192.168.1.1-name:server2ip:192.168.1.2相当于 Java 中的ListMapString, String{servers:[{name:server1,ip:192.168.1.1},{name:server2,ip:192.168.1.2}]}✅ Map 中包含 Listuser:name:lirenhobbies:-coding-hiking-reading等同于{user:{name:liren,hobbies:[coding,hiking,reading]}}四、ConfigurationProperties读取 Map 和 Listmyapp:name:lirentags:-java-spring-yamlmetadata:version:v1.0author:liren dadaservers:-name:server1ip:192.168.1.1-name:server2ip:192.168.1.2创建如下配置类DataComponentConfigurationProperties(myapp)// 注意名称要对应publicclassMyApp{privateStringname;// 普通字段privateListStringtags;// ListprivateMapString,Stringmetadata;// MapprivateListServerservers;// 嵌套自定义对象DatapublicstaticclassServer{privateStringname;privateStringip;}}然后使用配置类Controllerpublicclassdemo{AutowiredprivateMyAppapp;PostConstructpublicvoidinit(){System.out.println(app);}}// 运行结果MyApp(nameliren,tags[java,spring,yaml],metadata{versionv1.0,authorliren dada},servers[Server(nameserver1,ip192.168.1.1),Server(nameserver2,ip192.168.1.2)])Ⅳ. 日志级别的分类日志的级别从高到低依次为FATAL、ERROR、WARN、INFO、DEBUG、TRACEFATAL致命信息表示需要立即被处理的系统级错误。ERROR错误信息级别较高的错误日志信息但仍然不影响系统的继续运行。WARN警告信息不影响使用但需要注意的问题。INFO普通信息用于记录应用程序正常运行时的一些信息例如系统启动完成、请求处理完成等。DEBUG调试信息需要调试时候的关键信息打印。TRACE追踪信息比DEBUG更细粒度的信息事件(除非有特殊用意否则请使用DEBUG级别替代)。Ⅴ. 日志配置一、配置日志级别​ 日志级别配置只需要在配置文件中设置logging.level配置项即可如下所示​ Properties配置logging.level.rootdebug​ yml配置logging:level:root:debug二、日志持久化日志持久化有两种方式配置日志文件名配置日志的存储目录​ 若两种方式同时存在则以配置日志文件名的方式为准配置日志文件名​ Properties 配置logging.file.namelogger/springboot.log​ yml 配置# 设置日志文件的文件名可以跟绝对路径或者相对路径。logging:file:name:logger/springboot.log配置日志的存储目录​ Properties 配置logging.file.pathD:/temp​ yml 配置# 设置日志文件的目录logging:file:path:D:/temp这种方式只能设置日志的路径文件名固定为spring.log。使用 logback-spring.xml 配置日志在抽奖系统项目中使用到了用 xml 文件来配置日志如下所示具体内容忘记了可以查阅 gpt?xml version1.0 encodingUTF-8?configurationscantruescanPeriod60 secondsdebugfalse!-- springProfile作用进行环境隔离区分开发环境和生产环境 --springProfilenamedev!-- appender是输出器这里输出到控制台核心是这个classname只是下面要用于绑定日志级别的标识符 --appendernameconsoleclassch.qos.logback.core.ConsoleAppender!-- encoder作用日志格式 --encoderpattern%d{HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n%ex/pattern/encoder/appender!-- root日志级别设置为info所有日志从 INFO 级别开始往上打印并且输出到 console --rootlevelinfoappender-refrefconsole//root/springProfilespringProfilenameprod,test!-- 定义变量 --propertynamelogback.logErrorDirvalue/root/lottery-system/logs/error/propertynamelogback.logInfoDirvalue/root/lottery-system/logs/info/propertynamelogback.appNamevaluelotterySystem/!-- 给整个 Logback 日志上下文起“名字”为lotterySystem--contextName${logback.appName}/contextName!-- ERROR级别的日志配置如下 --appendernamefileErrorLogclassch.qos.logback.core.rolling.RollingFileAppender!-- 日志名称如果没有File 属性那么只会使用FileNamePattern的文件路径规则 如果同时有File和FileNamePattern那么当天日志是File明天会自动把今天 的日志改名为今天的日期。即File 的日志都是当天的。 --File${logback.logErrorDir}/error.log/File!-- 日志level过滤器保证error.xxx.log中只记录ERROR级别的日志--filterclassch.qos.logback.classic.filter.LevelFilterlevelERROR/levelonMatchACCEPT/onMatchonMismatchDENY/onMismatch/filter!--滚动策略按天滚动按照时间滚动 TimeBasedRollingPolicy--rollingPolicyclassch.qos.logback.core.rolling.TimeBasedRollingPolicy!--文件路径,定义了日志的切分方式——把每一天的日志归档到一个文件中,以防止日志填满整个磁盘空间--FileNamePattern${logback.logErrorDir}/error.%d{yyyy-MM-dd}.log/FileNamePattern!--只保留最近14天的日志--maxHistory14/maxHistory!--用来指定日志文件的上限大小那么到了这个值就会删除旧的日志--!--totalSizeCap1GB/totalSizeCap--/rollingPolicy!--日志输出编码格式化--encodercharsetUTF-8/charsetpattern%d [%thread] %-5level %logger{36} %line - %msg%n%ex/pattern/encoder/appender!--INFO级别的日志配置如下--appendernamefileInfoLogclassch.qos.logback.core.rolling.RollingFileAppender!--日志名称如果没有File 属性那么只会使用FileNamePattern的文件路径规则 如果同时有File和FileNamePattern那么当天日志是File明天会自动把今天 的日志改名为今天的日期。即File 的日志都是当天的。 --File${logback.logInfoDir}/info.log/File!--自定义过滤器保证info.***.log中只打印INFO级别的日志, 填写全限定路径--!-- 因为内置的 LevelFilter 只能过滤一个级别或以上所以才要自定义 --filterclasscom.example.lotterysystem.common.filter.InfoLevelFilter/!--滚动策略按照时间滚动 TimeBasedRollingPolicy--rollingPolicyclassch.qos.logback.core.rolling.TimeBasedRollingPolicy!--文件路径,定义了日志的切分方式——把每一天的日志归档到一个文件中,以防止日志填满整个磁盘空间--FileNamePattern${logback.logInfoDir}/info.%d{yyyy-MM-dd}.log/FileNamePattern!--只保留最近14天的日志--maxHistory14/maxHistory!--用来指定日志文件的上限大小那么到了这个值就会删除旧的日志--!--totalSizeCap1GB/totalSizeCap--/rollingPolicy!--日志输出编码格式化--encodercharsetUTF-8/charsetpattern%d [%thread] %-5level %logger{36} %line - %msg%n%ex/pattern/encoder/appender!-- 所有日志 ≥INFO 的都会触发 --rootlevelinfoappender-refreffileErrorLog/appender-refreffileInfoLog//root/springProfile/configuration注意需要在项目配置文件中添加该文件的路径## logback xml ## logging.configclasspath:logback-spring.xml spring.profiles.activedev #spring.profiles.activeprodⅥ. 配合 lombok 进行日志输出​ 添加 lombok 依赖dependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdoptionaltrue/optional/dependency​ 在想要使用日志的类中添加注解即可importlombok.extern.slf4j.Slf4j;importorg.springframework.web.bind.annotation.RestController;Slf4jRestControllerpublicclassLogController{publicvoidlog(){log.info(--------------要输出日志的内容----------------);}}
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

seo网站标题网络建设与运维

PaddlePaddle开源平台实战:从零训练一个中文文本分类模型 在当今信息爆炸的时代,每天有海量的中文文本产生——社交媒体评论、电商平台反馈、新闻资讯、客服对话……如何从中自动识别语义倾向、归类内容主题,成为企业智能化运营的关键。传统的…

张小明 2025/12/30 5:54:05 网站建设

织梦网站栏目对应首页举报网站平台怎么举报

CSS弹性布局(Flex)从入门到精通:解放你的页面布局思维在前端开发的布局领域,曾几何时我们依赖浮动(float)和定位(position)搭建页面,但面对复杂的响应式需求时&#xff0…

张小明 2025/12/30 6:15:49 网站建设

上海网站开发设计欧洲大型服务器

一、项目介绍 项目背景: 在智慧教育领域,学生课堂行为的自动检测与分析对于提高教学质量、评估学生学习状态具有重要意义。传统的行为检测方法依赖于人工观察,效率低且主观性强。基于计算机视觉和深度学习的学生行为检测系统能够实时、客观地识别学生的…

张小明 2025/12/30 6:18:12 网站建设

江苏网站推广wordpress 轻社交

YOLO模型训练任务支持预付费token套餐吗?更优惠结算方式 在AI视觉应用日益普及的今天,一个看似简单的问题却频繁出现在开发者社区:“我用YOLO做目标检测训练,能不能用预付费token来结算?”这个问题背后,其实…

张小明 2025/12/30 7:36:24 网站建设

手机触屏网站模板呼市网站制作

引言 在信息检索领域,分词是文本处理的基础环节。想象一下图书馆管理员如何整理书籍:如果不按章节标题分类,而是把整本书作为一个不可分割的单位,那么查找特定内容将变得极其低效。Elasticsearch的分词机制就像是一个智能的图书管…

张小明 2025/12/30 8:37:52 网站建设

网站的自动登录是怎么做的微软云怎么做网站

EmotiVoice支持哪些语言和语调?全面功能介绍 在虚拟主播实时互动、智能助手温情回应、有声书自动演绎情绪起伏的今天,用户早已不再满足于“能说话”的机器语音。他们期待的是——会笑、会生气、会低语倾诉的声音。这种对情感化表达与个性化音色的迫切需求…

张小明 2025/12/30 8:25:08 网站建设