1.关于POM.xml文件说明

2.1maven坐标说明

项目maven的基本信息
坐标:1.组ID 公司域名倒写
2.项目名称 名称不能重复 不能数字开头
3.项目版本
坐标意义:
1.主要用来用来管理/区分项目
2.项目的打包路径就是坐标的位置.

<groupId>com.jt</groupId>
    <artifactId>springboot_demo1</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>springboot_demo1</name>
    <description>Demo project for Spring Boot</description>

1.2 mava命令

  1. 常规用法:
    1.配置maven环境变量
    2.通过dos命令窗口执行命令(几乎不用)
  2. IDEA插件方式:
    1.clean 清空项目编译之后的文件class(位于target目录中)
    2.install 将项目中的target中的class进行打包xxx.jar包
    install时会将测试类一同打包,所以需要注意代码正确性
    3.跳过测试类打包
<properties>
    <java.version>1.8</java.version>
    <!--跳过测试类打包-->
    <skipTests>true</skipTests>
</properties>

1.3 parent标签作用

  1. 定位:
    SpringBoot主要的作用整合SSM.使得框架的使用更加简化
  2. 原则:“开箱即用”
  3. parent主要的作用:
    1.SpringBoot在内部兼容了当下几乎所有的第三方框架
    2.SpringBoot几乎解决了版本冲突问题
  4. 概括: parent标签中管理其他的项目版本信息

1.4dependency说明

原则:按需导入
springboot启动项(器)在包的内部SpringBoot已经完成了项目的"整合"(配置)用户拿来就用web导入SpringMVC

1.5插件说明

SpringBoot项目与maven合的一个插件
可以通过插件 执行项目打包/测试/文档生成等操作
注意事项: 该插件不能省

2.SpringBoot高级用法

2.1配置文件语法说明

2.1.1properties语法说明

  1. 数据结构: key-value
  2. 数据类型: string类型/number数值
  3. 语法:
    1,key-value 使用=号连接
    2,不需要添加多余的" " 号
    3,Pro文件在idea中编码格式UTF-8(手动可改)
    Pro文件在被程序读取时默认采用ISO-8859-1格式,中文必定乱码
    4,key=value不要出现多余的空格

2.1.2YML语法说明

  1. 数据结构: key-value
  2. 数据类型: string类型/number数值
  3. 语法:
    1,key:(空格) value
    2,key与key之间有层级关系,注意缩进
    3,字符编码都采用UTF-8
    4,可读性教Pro文件 更加友好

2.2 属性赋值

2.2.1业务需求

说明:如果将数据直接写死到.Java文件中,如果需要修改,则重新编译打包,不方便需要优化
优化: 通过配置文件动态为属性赋值

2.2.2 YML为属性赋值

2.2.2.1编辑YML配置文件

说明:spring负责YML文件中的数据

idea 跳过parsejava idea启动跳过测试类_idea 跳过parsejava

2.2.2.2controller 为属性赋值

1,接收用户发起的请求
2,响应用户JSON串数据
1,@responsebody 可以将对象转化为json串
2,如果返回值为String类型,则返回本身
3,规则:从spring容器根据key获取数据,之后为属性赋值
语法:spel表达式 ${key}

/**
* 1.接收用户发起的请求
* 2.响应用户JSON串数据
*   1.@ResponseBody 可以将对象转化为JSON串
*   2.如果返回值为String类型,则返回本身
*   纠正: A.JSON串
*/
@RestController
public class HelloController {

   //private String day="1天";
   /**
    * 规则:从Spring容器根据key获取数据,之后为属性赋值
    * 语法: spel表达式    ${key}
    */
   @Value("${user.day}")
   private String day;

   @RequestMapping("/getMsg")
   public String getMsg(){

       return "这个雨下几天:"+day;
   }
}