首页 > 其他分享 >Springboot Study-入门&配置

Springboot Study-入门&配置

时间:2024-07-16 17:08:09浏览次数:8  
标签:String spring Study 入门 private name address age Springboot

Springboot Study 入门&配置

1.入门

构建了Springboot工程,创建springboot项目,完成了第一个项目helloworld

2.配置

2.1 配置分类:

properties>yml>yaml(优先级)

2.2 yaml
  • 基本语法:大小写敏感,数值前要有空格,空格缩进表示层级关系

  • 数据格式:
    * 对象
    * 数组 (使用“-”表示数组每个元素)
    * 纯量
    * 参数引用:$

name: abc

person:
  name: zhangsan
  age: 18

address:
  - beijing
  - shanghai
  - hangzhou

msg1: "hello \n world"
msg2: 'hello \n world'
2.3如何读取配置文件内容

(1) @Value(${})

   @Value("${name}")
    private String name;

    @Value("${person.name}")
    private String name2;

    @Value("${person.age}")
    private String age;

    @Value("${address[0]}")
    private String address1;

    @Value("${msg1}")
    private String msg1;

(2) environment

  @Autowired
    private Environment environment;
 System.out.println(environment.getProperty("name"));
        System.out.println(environment.getProperty("person.name"));
        System.out.println(environment.getProperty("person.age"));
        for (int i = 0; i < 2; i++) {
            System.out.println(environment.getProperty("address["+i+"]"));

        }

(3) @ConfigurationProperties
新建一个Person类

@Component
@ConfigurationProperties(prefix = "person")
public class Person {
    private String name;
    private int age;

    private String[] address;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String[] getAddress() {
        return address;
    }

    public void setAddress(String[] address) {
        this.address = address;
    }



    @Override
    public String toString() {
        return "Person{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }

注入:

@Autowired
    private Person person;

调用

System.out.println(person.toString());
        String address[]=person.getAddress();
        for(String s:address){
            System.out.println(s);
        }
2.4 profile

不同环境下配置可能不同,profile功能就是来进行动态配置切换的

2.4.1 profile配置方式

(1)多profile文件方式

在主properties中:spring.profiles.active=dev

(2)yml多文档方式

spring:
  profiles:
    active: dev

---
spring:
  config:
    activate:
      on-profile: dev
server:
  port: 8081

---
spring:
  config:
    activate:
      on-profile: pro
server:
  port: 8082

---
spring:
  config:
    activate:
      on-profile: test
server:
  port: 8083
2.4.2 profile激活方式

(1)配置文件
在配置文件中配置:spring.profiles.active=dev

(2)虚拟机参数
在VMoption指定:-Dspring.profiles.active=dev

(3)命令行参数
java——jar xxx.jar --spring.profiles.active=dev

2.5 内部配置加载顺序
  1. file:./config/ :当前项目下的/config目录下
  2. file:./ :当前项目的根目录
  3. classpath:/config/:
    classpath的/config目录
    4.classpath:/ :classpath的根目录
2.6 外部配置加载顺序

看官网:http://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html

标签:String,spring,Study,入门,private,name,address,age,Springboot
From: https://www.cnblogs.com/jhhhred/p/18305692

相关文章

  • 基于Springboot的博物馆管理系统
    全文内容包括:1、采用技术;2、系统功能;3、系统截图;4、配套内容。索取方式见文末微信号,欢迎关注收藏!一、采用技术语言:Java1.8框架:SpringBoot数据库:MySQL5.7、8.0开发工具:IntelliJIDEA旗舰版其他:Maven3.8以上二、系统功能用户管理:负责注册用户的信息维护,包括用户账号的创建......
  • SpringBoot-集成 webSocket
    1.WebSocket简介2.springboot集成javax注解方式pom<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId></dependency>配置类/*****blog.coder4j.cn*......
  • [2024] springboot Hadoop技术下的校园二手交易系统的设计与实现
    博主介绍:✌CSDN新星计划导师、Java领域优质创作者、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流✌技术范围:SpringBoot、Vue、SSM、HTML、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数......
  • 【CTF入门】BUUCTF Crypto刷题(持续更新)
    【CTF入门】BUUCTFCrypto刷题(持续更新)一眼就解密题目介绍如图:我们可以发现加密的字符串由base64编码,因此base64解码后即可解密。什么是base64编码,又应该如何解码呢?base64编码介绍原理:https://www.bilibili.com/video/BV1hk4y1S7PJ?vd_source=69c558b0c7be97607c79afbd75bd1......
  • 入门级搜索引擎实现
    实验原理:该搜索引擎的实现主要分为四个部分。第一部分:从能源学院主页https://nyxy.cumtb.edu.cn/开始爬取,使用BeautifulSoup库来解析HTML,使用双端队列存储未访问的链接,并使用集合存储已访问的链接,以避免重复访问同一链接,同时过滤掉一些不感兴趣的链接。第二部分:将网页编......
  • PHPStudy搭建xssplatform
    1、源码下载https://github.com/78778443/xssplatform2、安装配置修改配置文件 index.php    新建.htaccess文件<IfModulemod_rewrite.c>RewriteEngineOnRewriteBase/RewriteRule^([0-9a-zA-Z]{6})$/index.php?do=code&urlKey=$1[L]RewriteRule^do/auth/(......
  • canvas快速入门(二)直线与折线的绘画
    注释很详细,直接上代码新增内容:1.直线绘制方法2.折线绘制方法3.画笔颜色调整方法4.画笔粗细调整方法项目结构:源码:index.html<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="......
  • Java入门
    Java是什么?java是一门非常火热的计算机语言Java程序初体验下载和安装下载JDK通过官方网站获取:http://www.oracle.com注意:针对不同操作系统,下载对应的安装包1、在浏览器输入网址,点击【Products】-->【Java】2、点击【DownloadJava】进行下载3、本人使用的是17版本,......
  • 基于Java+SpringBoot+Vue的创新创业教育中心项目申报管理系统的设计与开发(源码+lw+部
    文章目录前言项目背景介绍技术栈后端框架SpringBoot前端框架Vue数据库MySQL(MyStructuredQueryLanguage)具体实现截图详细视频演示系统测试系统测试目的系统功能测试系统测试结论代码参考数据库参考源码获取前言......
  • 【2024】springboot校服订购系统设计与实现
     博主介绍:✌CSDN新星计划导师、Java领域优质创作者、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流✌技术范围:SpringBoot、Vue、SSM、HTML、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大......