11-30 SpringBoot2

热部署

开发过程中,修改代码,不需要重启,自动更新

项目上线,一定要关闭

SpringBoot热部署的实现??

ideal默认阻止class类更新

2.需要手动构建项目,可以使用快捷键激活此功能ctrl + F9  / build project

自动构建项目

允许程序运行时自动构建

推荐:使用手动更新


项目上线关闭:

1.删除spring-boot-devtools依赖

2.SpringBoot全局配置

SpringBoot的配置文件

Springboot提供的自动配置,需要参数只能程序员提供, SpringBoot配置参数允许配置方:式

从上往下:优先级从低到高,

11配置的 会覆盖3的 比如说端口

命令行的方式设置参数,由于优先级的关系,会直接覆盖第三步直接在外部命令行就可以设置了

不是项目内部配置的8080端口

实现运维的参数外部更改  方便后续yaml文件,yml文件是同一类型文件,只是后缀名不一样

系统配置文件

分为三类

1.properties

2.yaml

3.yml

yaml文件,yml文件是同一类型文件,只是后缀名不一样

properties文件:语法: key=value
每一个key/value独占一行

语法简单 如果key一样 重复写 没有缩进格式

yml文件:

大小写敏感
属性层级关系使用多行描述,每行结尾使用冒号结束使用缩进表示层级关系,同层级左侧对齐,只允许使用空格(不允许使用Tab键)属性值前面添加空格(属性名与属性值之间使用冒号+空格作为分隔)#号表示注释

password:后面敲一个空格

yml:

properties:

yml和properties转换:

SpringBoot允许都在文件存在, yml与properties,yaml共存

1.每个文件中配置项不一样.把这个文件所有的配置项组合在一起

如果有两个端口?9090和8080

yml我如果加一个9090

如果没有提示?

三个配置,依旧以8090为准

注释yaml的端口 以yml为准 9090  然后最后是properties

怎么读取这些数据呢?(重点)

1.如果配置参数写在application.yml/properties不需要手动加载文件, springboot自动加载文件2。如果配置参数写在非application.yml/properties文件中,需要手动加载文件,通过
@PropertySource("data.yml")

第一种方式:读取单个值: @Value注解

@Value只能注入一个值  缺陷哦

第二种方式:

SpringBoot提供了一个对象,能够把所有的数据都封装到这一个对象中,这个对象叫做Environment

读取整个的对象数据(多个值)

数组也能注入:

读取某个对象属性注释ConfigurationProperties("stu1")

或者单个单个的来读

注意事项:
随机值,在程序启动的时候,生成的,把这个值提供$表达式
每次获取这个值,是固定的值

多环境配置(运维)

项目经过多种环境下运行,开发者在开发项目的时候,直接在开发者电脑上运行,这个环境称为开发环境,测试人员对项目进行测试,项目部署在测试服务器上,这个环境称为测试环境,项目开发完成,测试通过,项目.上线部署,这个环境称为生产环境

这些环境配置肯定是不一样,比如数据库参数,缓存参数...如果是让运维人员使用配置外部化,需要在命令行使用-写很多的配置参数名,,很麻烦,容易出错
SpringBoot提供了多环境配置,由开发者在开发阶段,就为不同环境提供不同的配置,根据项目在那个环境运行,激活那个环境配置
多环境配置:
 yml配置文件:

mybatis:
  mapper-locations: classpath*:mapper/*Mapper.xml
  type-aliases-package: com.huse.springbootbookshop.entity
pagehelper:
  helper-dialect: mysql
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    password: root
    url: jdbc:mysql://localhost:3306/book_shop?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
    username: root
 

yml方式

yml配置文件:
。第一种方式,在一个配置文件中(application.yml)编写多个环境配置
。第二种方式:多文件配置每一个环境对应一个配置文件 推荐
properties配置文件:多文件配置每一个环境对应一个配置文件 推荐

命名规范: 生成环境: prod  测试环境: test     开发环境: dev

生产环境,测试环境,开发环境三个环境由4个配置:

  • 三个环境的配置文件
  • 主配置文件: application.yml  公共配置

(改pom 本版 jdk)  改成yml格式配置文件

多文件配置

properties配置文件:多文件配置每一个环境对应一个配置文件 推荐
与yml的多文件是一样,文件后缀名为properties

application.properties

激活: spring.profiles.active=XX

application-dev.propertieso

application-test.properties

application-prod.properties

SpringBoot日志记录

开发中,打印一些内容,使用日志输出,不要使用System.out.printin()lombok插件:在类上使用@Slf4j注解,自动给类注入一个log(日志对象)

SpringBoot默认使用日志框架: logback

日志的级别:

定义log日志输出级别

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/218589.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

02、pytest环境准备

工具准备 python官网下载:https://www.python.org/pycharm官网下载:https://www.jetbrains.com.cn/en-us/pycharm/pytest官方文档:https://docs.pytest.org/en/7.4.x/python-office官网文档:http://www.python-office.com/ 参考…

数学建模-二氧化碳排放及时空分布测度

二氧化碳排放及时空分布测度 整体求解过程概述(摘要) 面临全球气候变化的巨大挑战,我国积极响应《巴黎协定》的号召,提出“2030年前碳达峰,2060 年前实现碳中和”的碳排放发展目标,并将碳中和相关工作作为 2021 年的重点任务之一…

使用腾讯云轻量应用服务器安装宝塔面板建站全流程

腾讯云轻量应用服务器宝塔面板怎么用?轻量应用服务器如何安装宝塔面板?在镜像中选择宝塔Linux面板腾讯云专享版,在轻量服务器防火墙中开启8888端口号,然后远程连接到轻量服务器执行宝塔面板账号密码查询命令,最后登录和…

ElasticSearch篇---第一篇

系列文章目录 文章目录 系列文章目录前言一、谈谈分词与倒排索引的原理二、说说分段存储的思想三、谈谈你对段合并的策略思想的认识前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分…

上海亚商投顾:沪指震荡调整跌 CRO概念股集体大跌

上海亚商投顾前言:无惧大盘涨跌,解密龙虎榜资金,跟踪一线游资和机构资金动向,识别短期热点和强势个股。 一.市场情绪 沪指昨日窄幅震荡,创业板指尾盘跌近1%,板块分化较为明显。 CRO概念股集体下挫&#x…

AIGC在天猫商品海报生成上的探索

灵感艺术家项目,旨在通过AIGC绘图能力,联合商家打造低门槛高趣味性的宣传海报设计大赛,本文分享我们的方案和优化方向。建议对AIGC感兴趣的工程、算法方向的同学阅读。 项目背景 灵感艺术家项目,旨在通过AIGC绘图能力,…

Elasticsearch:评估 RAG - 指标之旅

作者:Quentin Herreros,Thomas Veasey,Thanos Papaoikonomou 2020年,Meta发表了一篇题为 “知识密集型NLP任务的检索增强生成” 的论文。 本文介绍了一种通过利用外部数据库将语言模型 (LLM) 知识扩展到初始训练数据之外的方法。 …

07、pytest指定要运行哪些用例

官方用例 # 目录结构 | |----test_mod.py | |----testing||----test_dir.py# content of test_mod.py import pytestdef func(x):return x 1def test_mod():print("test_mod function was invoked")assert func(3) 5def test_func():print("test_func was in…

力扣每日一题:2477. 到达首都的最少油耗(2023-12-05)

力扣每日一题 题目:2477. 到达首都的最少油耗 日期:2023-12-05 用时:34 m 15 s 时间:37ms 内存:84.8MB 思路:分别计算每条路上通过的城市数量(数量/座位数,向上取整)&…

1.qml-3D入门讲解介绍

本章我们来学习QML 3D教程,QML 3D能够支持windows linux等多平台跨平台并且显示效果大部分一致,非常方便,学习的qt版本最低为qt6.5。 要使用qml 3D类,需要导入QtQuick3D模块。 这是使用空间渲染器和场景图的 QML 前端。目前&…

【C/PTA —— 14.结构体1(课外实践)】

C/PTA —— 14.结构体1(课外实践) 一.函数题6-1 选队长6-2 按等级统计学生成绩6-3 学生成绩比高低6-4 综合成绩6-5 利用“选择排序算法“对结构体数组进行排序6-6 结构体的最值6-7 复数相乘运算 二.编程题7-5 一帮一7-6 考试座位号 一.函数题 6-1 选队长…

【React + Typescript】使用WebPack包管理、各种扩展插件组成的初始模板,开源协议:CC-BY-4.0

React Typescript Webpack 模板 模板展示项目结构使用的部分扩展包页面配置代码Layout 公共容器组件路由Jspackage.json 开源模板下载TIP 模板展示 项目结构 使用的部分扩展包 📂 System ├── 📂 Plugin │ ├── 📄 file-loader | 在处…

Java---异常

文章目录 1. 异常概述2. try...catch3. Throwable成员方法4. 编译时异常和运行时异常区别5. 异常处理之throws6. 自定义异常7. throws和throw的区别 1. 异常概述 1. 异常:就是程序中出现了不正常的情况。 2. Error:严重问题,不需要处理。Exce…

基于Java SSM框架实现美食推荐管理系统项目【项目源码+论文说明】

基于java的SSM框架实现美食推荐管理系统演示 摘要 21世纪的今天,随着社会的不断发展与进步,人们对于信息科学化的认识,已由低层次向高层次发展,由原来的感性认识向理性认识提高,管理工作的重要性已逐渐被人们所认识&a…

数智化招采平台档案管理的功能、价值与亮点

2005年4月,《中华人民共和国电子签名法》正式实施,明确电子签名与手写签名具有同等的法律效力。 2013年5月,《电子招标投标办法》正式实施,明确电子招标投标交易平台应当具备电子归档功能。 2021年1月,《中华人民共和…

web前端开发HTML/css用户登录界面

代码&#xff1a; <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns"http://www.w3.org/1999/xhtml"> <head> <meta http-equi…

基于Java SSM框架实现农产品供销服务系统项目【项目源码+论文说明】计算机毕业设计

基于java的SSM框架实现农产品供销服务系统演示 摘要 21世纪的今天&#xff0c;随着社会的不断发展与进步&#xff0c;人们对于信息科学化的认识&#xff0c;已由低层次向高层次发展&#xff0c;由原来的感性认识向理性认识提高&#xff0c;管理工作的重要性已逐渐被人们所认识…

使用cmake构建的工程的编译方案

1、克隆项目工程 2、进入到工程目录 3、执行 mkdir build && cd build 4、执行 cmake .. 5、执行 make 执行以上步骤即可完成对cmake编写的工程进行编译 &#xff0c;后面只需执行你的编译结果即可 $ git clone 你想要克隆的代码路径 $ cd 代码文件夹 $ mkdir bu…

【Linux】编译器-gcc/g++与调试器-gdb的使用

&#x1f440;樊梓慕&#xff1a;个人主页 &#x1f3a5;个人专栏&#xff1a;《C语言》《数据结构》《蓝桥杯试题》《LeetCode刷题笔记》《实训项目》《C》《Linux》 &#x1f31d;每一个不曾起舞的日子&#xff0c;都是对生命的辜负 目录 前言 1.gcc/g语法 2.gcc的使用及…

数据结构——二叉树(相关术语、性质、遍历过程)

遍历操作 二叉树的层次遍历-CSDN博客 二叉树的基本操作-CSDN博客 二叉树的先序遍历非递归实现-CSDN博客 后序遍历的非递归方式实现-CSDN博客 二叉树&#xff1a;已知先序中序求后序或者其他&#xff08;秒解&#xff09;-CSDN博客 因为之前发过一遍&#xff0c;我就不复制…
最新文章