专栏首页程序源代码【程序源代码】《Spring Boot开发笔记系列》第一节总结
原创

【程序源代码】《Spring Boot开发笔记系列》第一节总结

​关键字:Springboot 开发笔记

各位亲爱的小伙伴:大家,上午好!

《Spring Boot 开发笔记系列》

这套笔记和源码是我自己在学习springboot开发中实际一个字一个字敲出来的。

《Spring Boot开发笔记》第一个总结

(四)pom文件的研究

  1. parent父项目spring-boot-dependencies它是真正管理springboot 应用;其实可以说理解成它来管理所有的依赖。可以把它理解成springboot的管理中心。
  2. spring-boot-starter 场景启动器;帮我们导入了web模块正常运行所依赖的组件;Springboot将所有的功能场景都抽取出来做成一个个的starters启动器,只需要在项目里面引入这些场景依赖就可以了;也就是说需要什么功能的时候就引入什么功能就可以了。这是一种开箱即用的思想;

(五)类文件的研究

  1. SpringBootApplication 其实是一个组合注解,它用来标在类上说明书这个类是springboot的主配置类,springboot就应用于运行这个类的main方法来启动springboot应用;
  2. SpringBootConfiguration:springboot的配置类,标注在类上表示这是一个springboot的配置类。
  3. Configuration:配置类上来标注这个注解,可以理解配置类其实就是原来模式的配置文件xml文件这类东东,配置类其实是容器中的一个组件@component
  4. @EnableAutoConfiguration:开启自动配置功能;将主配置类的的所在包及下面所有子包下的组件扫描到spring容器中。注意的是如果不是主配置类包下的即包外的类是不能自动加载的。这点需要特别注意一下。

(六)使用spring initializer快速创建springboot项目应用

IDEA默认支持使用快速创建项目,但注意要连网络才可以。因为我们在创建工程时需要连网下载需要的模块 。

默认生成的项目特点:

主程序已经生成好了。只需要实现业务逻辑就可以了

resource文件夹中的目录结构

1、static:保存所有的资源部,比如js /css/ images;

2、templates:保存所有的模板页面;但需要注意的是因为springboot默认是jar包方式使用运行的,它本身默认不支持jsp页面这类传统动态文件;

3、application.properties :应用的默认配置文件,一般这里面是配置一些参数使用的比如配置端口号或者datasource等配置;

(七)配置文件

springboot使用一个全局的配置文件夹,配置文件名是固定的:application.properties 、application.yml

  1. 配置文件的作用:自动配置的默认值;
  2. yml 是递归的格式书写方式但注意的是yml不是标记语言。原来项目中最多使用的是xml文件用于配置;但yml是以数据为中心的更合适于当配置文件

 3.xml更多是需要开头标签和结束标签。所以占用大量的数据量。读取的时候浪费时间更长。这点需要注意下

(八)yml 语法

yml 语法

以空格的缩进来控制层级关系,格式是属性和值的这种系统来表态;大小写敏感的

值的写法

  1. 普通值 (数字、字符串、布尔值) 语法格式:k:v 注意事项:字符串默认不添加引号;如果添加单引号或者双引号是有特殊使用场景的; “” 双引号,不会转义字符串里面的字符,特殊字符会作用本身表示意见进行执行; name:"zhangsan \n lisi"   实际输出结果是:zhangsan 换行 lisi ''单引号,会转义特殊字符,特殊字符最终只是一个普通的字符串数据; name:'zhangsan \n lisi'    实际输出结果是:zhangsan \n lisi
  2. 对象、map (属性和值、键值对) 分行写法: friends: lastname: zhangsan age:20 sex:men 行内写法: friends:{lastname:zhangsan ,age:20 ,sex:men}
  3. 数组(List、Set)用-值表示数组中的每一个元素 pets: -cat -dog -pig 行内写法 pets:[cat,dog,pig] 数组(List、Set)

(九)配置文件的读取

yml配置文件的读取

方法 :将配置文件中配置的每一个属性的值,映射到这个组件中。使用@configurationProperties 这个注解告诉springboot将本类中的所有属性和配置文件中相关的配置进行绑定;可以理解成将类与配置文件的绑定声明;

javaBean获取配置文件内容

//需要注意的是:类组件必须写上这个注解标签才可以被容器识别,同时才能使用容器提供的具体功能;不然会出问题的。
@component
//这个里面的prefix 作用是指定配置文件中要对应哪个实体对象
@configurationProperties(prefix="persion");
public class Person{
   //省...
}

properties配置文件的读取

方法:与yml配置文件基本相同,也是使用使用@configurationProperties 绑定实体

需要注意的是:peoertis编码格式乱码的问题。这里需要说明一下:因为properties默认使用的是ascii码编码格式进行使用的,但idea 工具默认一般是使用uft-8编码格式进行处理类或者相关文件的;导致编码格式不一致出现乱码的问题。

idea> settings>file Encodings

注意事项

咱们在配置文件时一般都有希望配置时会有自动提示等相关信息。所以这里面有个使用的技巧将是引入springboot配置文件提示需要导入的依赖。

<!--导入配置文件处理器,配置文件进行绑定就会有提示-->
<dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-configuration-processor</artifactId>
 <optional>true</optional>
</dependency>

@vaule 这个注解的使用。

也可以使用这个注解进行一个一个值的获取。但注意这个注解标签需要与配置文件的元素保持一样才可以,区分格式和大小写。不然不能直接获取到。

本文分享自微信公众号 -程序源代码(itcode)

作者:程序源代码

写作说明】以上内容分享给喜欢编程,有梦想的程序员,希望能帮助到你们。以上文章属于此公众号原创所有,如需转载请注明出处。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【程序源代码】《Spring Boot开发笔记系列》第一节总结

    (六)使用spring initializer快速创建springboot项目应用

    程序源代码
  • springcloud学习手册-Config 分布式配置中心

    导读 | Config分布式配置中心 ? 一、为什么需要使用配置中心来统一管理配置呢? 通常在一个分布式环境中,同类型的、不同类型的服务往往多达几个...

    程序源代码
  • SpringBoot 全家桶

    --------------------------------------------------

    程序源代码
  • 【程序源代码】《Spring Boot开发笔记系列》第一节总结

    (六)使用spring initializer快速创建springboot项目应用

    程序源代码
  • Nacos做配置中心经常被问到的问题

    通过@NacosPropertySource可以注入一个配置文件,如果我们需要将配置分类存储或者某些配置需要共用,这种需求场景下,一个项目中需要加载多个配置文件...

    猿天地
  • Office转PDF,Aspose太贵,怎么办?

    在程序开发中经常需要将Office文件转换成PDF,著名的Aspose的三大组件可以很容易完成这个功能,但是Aspose的每个组件都单独收费,而且每个都卖的不便...

    oec2003
  • DDD的终极大招——By Experience | 洞见

    以DDD思想和微服务架构为代表的新的架构时代正在逐步形成,不同方法和工具的涌现让人激动不已,同时这个过程也让人感觉到些许的不安,因为没有一套方法和一套架构能够打...

    ThoughtWorks
  • TI-ONE 平台内置框架操作案例

    登陆 智能钛机器学习平台控制台,将平台地域切换为您开通服务时所选地域。在工程列表页面,单击【我的工程】>【新建工程】。 ...

    TI MAKER
  • Leetcode 74. Search a 2D Matrix

    版权声明:博客文章都是作者辛苦整理的,转载请注明出处,谢谢! https://blog.csdn....

    Tyan
  • JS数据类型分类和判断 转

    JavaScript中有6种数据类型:数字(number)、字符串(string)、布尔值(boolean)、undefined、null、对象(Object)...

    wuweixiang

扫码关注云+社区

领取腾讯云代金券