自学内容网 自学内容网

Springboot从入门到起飞-【day01】

 个人主页→VON

收录专栏→Springboot从入门到起飞

 一、前言

经过了近两个月的沉淀开始了新专栏的学习,经过深思熟虑还是决定重新学习java,因为基础部分东西太多太乱就不进行逐一的更新了,等到学完了一同进行更新。

二、Springboot简要概述

Spring Boot 是由 Pivotal 团队提供的一种全新的 Java 框架,旨在简化 Spring 应用程序的创建和开发过程。它基于“习惯优于配置”的理念,提供了一系列预设的依赖包,使得开发者可以快速启动和运行 Spring 应用,而无需过多关注繁琐的 XML 配置。

核心功能

Spring Boot 的核心功能包括:

  • 可独立运行的 Spring 项目:Spring Boot 应用可以以 jar 包的形式独立运行,无需部署到外部 Servlet 容器。

  • 内嵌的 Servlet 容器:支持内嵌 Tomcat、Jetty 或 Undertow,简化了 web 应用的部署流程。

  • 简化的 Maven 配置:Spring Boot 提供了基础 POM 文件来简化 Maven 配置,减少了项目构建的复杂性。

  • 自动配置 Spring:根据项目依赖自动配置 Spring 框架,减少了手动配置的需求。

  • 生产就绪型功能:包括性能指标、应用信息和健康检查等,可直接在生产环境中使用。

  • 无代码生成和 XML 配置:Spring Boot 不需要生成代码,也不需要 XML 配置文件,全部配置可以通过注解和属性文件完成。

优势和好处

使用 Spring Boot 的好处包括:

  • 简化开发:开发者可以专注于业务逻辑,而不是框架的配置。

  • 快速整合第三方框架:通过 Maven 依赖关系和继承,Spring Boot 可以快速整合如 Hibernate、MyBatis 等第三方框架。

  • 适合微服务架构:Spring Boot 的轻量级和自动配置特性使其成为实现微服务架构的理想选择。

  • 简化部署:内嵌的 HTTP 服务器(如 Tomcat)允许以 Java 应用程序的形式执行,简化了部署过程。

  • 简化监控:通过引入 spring-boot-starter-actuator 依赖,可以方便地使用 REST 方式监控应用性能。

为什么学习 Spring Boot

学习 Spring Boot 的理由包括:

  • 官方推荐:Spring Boot 是官方推荐的技术,得到了广泛的支持和推广。

  • 简化编码和配置:Spring Boot 大大简化了编码和配置工作,提高了开发效率。

  • 未来发展趋势:微服务是未来的发展趋势,Spring Boot 支持 REST API 的实现,适合构建微服务架构。

三、工程创建

最新版本的idea

结合我自身情况来简要说明一下,我的idea相对来说比较新的了,但是视频中所用的jdk是1.8(8)。使用最新版本的idea如果想要创建jdk8的Springboot项目需要用到阿里云的镜像来创建。

默认情况下是无法选到java8的。

如果想要创建java8的,需要改变url的地址。 

创建好的Springboot工程长这样。

四、配置文件

YAML配置文件的基础知识

YAML(YAML Ain't Markup Language)是一种数据序列化格式,广泛用于配置文件和数据交换。它以人类可读的形式呈现数据结构,支持多种编程语言,如Python、Java和Ruby。YAML的设计目标是数据的跨语言交换,易于人类阅读和编写,同时支持通用的数据类型。

YAML的语法规则

YAML的语法简洁直观,主要特点包括:

  • 缩进:使用空格缩进来表示层级关系,通常是2或4个空格。

  • 键值对:使用冒号和空格来分隔键和值。

  • 列表:使用短横线-来表示列表项。

  • 注释:使用#来添加注释。

  • 数据类型:支持字符串、数字、布尔值、列表、字典和空值等类型。

例如,一个简单的YAML配置文件可能如下所示:

name: "John"

age: 30

isStudent: true

fruits:

- apple

- banana

- orange

Python中的YAML操作

在Python中,可以使用pyyaml库来处理YAML文件。首先需要安装这个库,可以通过pip install pyyaml命令来安装。使用pyyaml库,可以轻松地读取和写入YAML文件。

读取YAML文件

import yaml



# 打开并读取YAML文件

with open(file="config.yaml", mode="r", encoding='utf-8') as f:

data = yaml.safe_load(f)

print(data)

写入YAML文件

import yaml



# 准备要写入的数据

data = {

"Person": {

"name": "John",

"age": 30,

"address": {

"street": "123 Main St",

"city": "Anytown",

"state": "CA"

}

}

}



# 写入YAML文件

with open(file="output.yaml", mode="w") as f:

yaml.dump(data, f)

YAML在自动化测试中的应用

YAML文件可以与UI自动化测试结合使用,实现关键字驱动测试(KDT)。通过定义一系列的动作和参数,可以创建灵活的测试脚本,如访问页面、输入文本、点击按钮等操作。

- action: goto

params:

url: 'https://www.example.com'

- action: sendkeys

params:

locator: ['id', 'search']

value: 'query'

在Python中,可以通过解析这些YAML配置来驱动测试用例的执行,从而提高测试的可维护性和可读性。

YAML配置文件因其简洁性和易读性,在软件开发和自动化测试中被广泛采用。它不仅提高了配置管理的效率,还促进了不同系统和语言间的数据交换。

操作properties配置文件的方法

在Java中,properties配置文件通常用于存储不经常变动的信息,如数据库连接配置或缓存服务器连接配置。这些配置文件以.properties为后缀,其内容格式为键值对(key=value)。Java的JDK提供了java.util.Properties类,用于读取和写入这些配置文件。

读取properties配置文件

要读取properties配置文件,可以使用Properties类的load()方法。这个方法从输入流中读取属性列表(键和元素对)。例如,以下代码演示了如何读取一个名为config.properties的配置文件:

import java.io.IOException;

import java.io.InputStream;

import java.util.Properties;



public class PropertiesReader {

public void getPropertiesReader() {

Properties properties = new Properties();

InputStream inStream = getClass().getResourceAsStream("config.properties");

try {

properties.load(inStream);

properties.forEach((key, value) -> System.out.println("Key: " + key + ", Value: " + value));

} catch (IOException e) {

e.printStackTrace();

}

}

}

写入properties配置文件

要写入properties配置文件,可以使用Properties类的setProperty()方法将键值对保存到内存中,然后使用store()方法将这些键值对持久化到文件中。以下代码演示了如何将信息写入config.properties文件:

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.OutputStream;

import java.util.Properties;



public class PropertiesWriter {

public void writeProperties() {

Properties properties = new Properties();

try (OutputStream output = new FileOutputStream("config.properties")) {

properties.setProperty("color", "black");

properties.setProperty("animal", "rabbit");

properties.store(output, "Comment for properties file");

} catch (IOException e) {

e.printStackTrace();

}

}

}

properties配置文件的其他操作

除了基本的读写操作外,Properties类还提供了其他方法,如getProperty()用于获取指定键的值,propertyNames()用于获取所有键的枚举,以及clear()用于清除所有加载的键值对。

在Spring框架中,可以通过<context:property-placeholder>标签或PropertyPlaceholderConfigurer类来加载properties配置文件,使得配置信息可以在Spring容器中使用。

示例代码

以下是一个完整的示例,展示了如何使用Properties类来读取和写入properties配置文件:

import org.junit.Test;

import java.io.FileInputStream;

import java.io.IOException;

import java.io.InputStream;

import java.util.Properties;



public class PropertiesTest {

@Test

public void testReadProperties() throws IOException {

try (InputStream inputStream = new FileInputStream("config.properties")) {

Properties properties = new Properties();

properties.load(inputStream);

properties.forEach((key, value) -> System.out.println("Key: " + key + ", Value: " + value));

}

}

}

在实际应用中,properties配置文件提供了一种灵活且方便的方式来管理应用程序的配置信息。通过Properties类的各种方法,可以轻松地读取、写入和管理这些配置信息。


原文地址:https://blog.csdn.net/2302_80329073/article/details/142899124

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!