当前位置: 首页 > news >正文

SSM学习9:SpringBoot简介、创建项目、配置文件、多环节配置

简介

SpringBoot式用来简化Spring应用的初始搭建以及开发过程的一个框架

项目搭建
File -> New -> Project
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
选中pom.xml文件,设置为maven项目
在这里插入图片描述
在这里插入图片描述
项目启动成功
在这里插入图片描述
可以访问BasicController中的路径
在这里插入图片描述

配置文件

resources目录下

application.properties
默认的配置文件

修改端口号

spring.application.name=bootserver.port=8080

application.yml
需要自己手动创建

修改端口号(注意有空格,一般idea会有快捷提示)

server:port: 8080

application.yaml
需要自己手动创建

修改端口号(注意有空格,一般idea会有快捷提示)

server:port: 8080

都存在时,优先级为:properties > yml > yaml。最常用的是yml格式

yml文件语法规则

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

配置文件内容读取

方式1:

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

在这里插入图片描述
方式2:

@Autowired
private Environment environment;environment.getProperty("demoName")

在这里插入图片描述
方式3:
使用类的方式(推荐)

package org.example.springbootdemo.demos.web;import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;import java.util.List;// 设置成bean
@Component
// 要读取的属性
@ConfigurationProperties(prefix = "enterprise")
// 要提供对应的get和set方法
public class Enterprise {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 List<String> getLikes() {return likes;}public void setLikes(List<String> likes) {this.likes = likes;}@Overridepublic String toString() {return "Enterprise{" +"name='" + name + '\'' +", age=" + age +", likes=" + likes +'}';}// 与配置文件中的属性对应private String name;private int age;private List<String> likes;
}
 // 自动装配这个bean@Autowiredprivate Enterprise ep;

在这里插入图片描述

多环境配置

application.yml

# 设置启用的环境
spring:profiles:active: dev---
# 开发环境
spring:profiles: dev# 其他配置---
# 生产环境
spring:profiles: prod

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • docker 构建 mongodb
  • 阿里服务器购买与java环境搭建 实践
  • kafka高性能的底层原理分析
  • 若依ruoyi+AI项目二次开发(智能售货机运营管理系统)
  • 0719_驱动1 arm裸机开发与linux驱动开发区别
  • centos7安装redis数据库步骤
  • 数据库编程中游标 连接 commit 字符集
  • 键盘是如何使用中断机制的?当打印一串字符到显示屏上时发生了什么???
  • 【科大讯飞笔试题汇总】2024-07-27-科大讯飞秋招提前批(研发岗)-三语言题解(Cpp/Java/Python)
  • 数据结构:单链表的实现
  • 大疆创新2025校招内推
  • LeeCode Practice Journal | Day25_Backtracking04
  • iOS 创建一个私有的 CocoaPods 库
  • Python3网络爬虫开发实战(2)爬虫基础库
  • Csrf复习(pikachu靶场和防御手段)
  • 【附node操作实例】redis简明入门系列—字符串类型
  • 【跃迁之路】【641天】程序员高效学习方法论探索系列(实验阶段398-2018.11.14)...
  • 2018一半小结一波
  • 78. Subsets
  • Cookie 在前端中的实践
  • java2019面试题北京
  • Java多线程(4):使用线程池执行定时任务
  • Median of Two Sorted Arrays
  • MySQL主从复制读写分离及奇怪的问题
  • Redis字符串类型内部编码剖析
  • Redux系列x:源码分析
  • SpiderData 2019年2月13日 DApp数据排行榜
  • supervisor 永不挂掉的进程 安装以及使用
  • V4L2视频输入框架概述
  • vue数据传递--我有特殊的实现技巧
  • 初识MongoDB分片
  • 大快搜索数据爬虫技术实例安装教学篇
  • 简单基于spring的redis配置(单机和集群模式)
  • 如何优雅地使用 Sublime Text
  • 实战|智能家居行业移动应用性能分析
  • 通过几道题目学习二叉搜索树
  • 用jquery写贪吃蛇
  • [Shell 脚本] 备份网站文件至OSS服务(纯shell脚本无sdk) ...
  • 第二十章:异步和文件I/O.(二十三)
  • ​html.parser --- 简单的 HTML 和 XHTML 解析器​
  • # Apache SeaTunnel 究竟是什么?
  • #QT(QCharts绘制曲线)
  • #前后端分离# 头条发布系统
  • (3)选择元素——(14)接触DOM元素(Accessing DOM elements)
  • (Arcgis)Python编程批量将HDF5文件转换为TIFF格式并应用地理转换和投影信息
  • (day18) leetcode 204.计数质数
  • (poj1.2.1)1970(筛选法模拟)
  • (博弈 sg入门)kiki's game -- hdu -- 2147
  • (超简单)使用vuepress搭建自己的博客并部署到github pages上
  • (二)换源+apt-get基础配置+搜狗拼音
  • (四十一)大数据实战——spark的yarn模式生产环境部署
  • (一)、软硬件全开源智能手表,与手机互联,标配多表盘,功能丰富(ZSWatch-Zephyr)
  • .NET / MSBuild 扩展编译时什么时候用 BeforeTargets / AfterTargets 什么时候用 DependsOnTargets?
  • .NET Core WebAPI中封装Swagger配置
  • .net core 客户端缓存、服务器端响应缓存、服务器内存缓存