1.IDEA环境相关预设置
1.1实现字体大小的滚轮操作
1.2自动提示大小写匹配(默认开启,选择关闭,提高编程体验)
1.3参数自动提示功能勾选,还可以设置提示时间,需注意时间与内存占用也相关
1.4字符集编码设置勾选,需注意下方properties的编译字符格式也需设置,不然读取会产生乱码
1.5自动编译
2.Maven相关配置及介绍
2.1仓库的环境配置
路径:本地maven目录->conf文件夹->settings.xml
本地仓库配置:
<!--定义本地仓库路径 如果pom.xml文件报错,则切换本地仓库-->
<localRepository>E:/software/mvn_repo</localRepository>
镜像仓库配置:
<!--镜像-->
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
2.2Maven常见命令
1.install:项目打包命令,将整个项目打包,也就是target中所有编译后文件生成jar包,生成也在target中
2.clean:清空target文件下的编译文件
2.3pom.xml
1.坐标
<!--坐标的说明: 只要是一个Maven工程必然会有坐标-->
<!--groupId 组ID: 公司域名倒写-->
<groupId>com.jt</groupId>
<!--项目名称 名称唯一-->
<artifactId>springboot_demo1</artifactId>
<!--版本: 可以自己指定-->
<version>0.0.1-SNAPSHOT</version>
作用:
- 可以唯一标识项目的路径
- 坐标是将来项目打包的位置
- 改jar包文件可以被其他项目依赖
2.parent标签
parent标签,是Spring官网负责维护, 在其中定义了几乎所有的框架与SpringBoot兼容的版本信息.
作用: 集中定义版本号,其他框架的依赖不用添加version标签,统一交由springboot管理
3.依赖
4.build plugins
需注意如果不添加此默认插件,比如在Linux系统发布jar包时会报“主菜单未找到”错
3.SpringBoot新建项目
(说明:如果使用的是社区版本,需要提前安装Spring Assistant插件,否则没有Spring/JS/HTML的支持)
1.创建springboot项目
2.添加依赖
3.springboot新建时的报错
父级版本报错原因:
而是因为idea会默认缓存Maven本地仓库已存在的中的依赖项。
解决:–解决方案就是我们清除一下缓存重新启动
插件版本报错:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.5.1</version>
</plugin>
</plugins>
</build>
4.SpringBoot配置文件
1.properties文件
2.yml文件
5.属性赋值数据注入
如果将数据写死在java文件中,如果数据发生变化,则需要手动的修改.java文件. 如果以后有大量的需求,则扩展不方便,需要松耦合
解决方案: 动态为属性赋值.
1.默认方式
2.yml方式
public class HelloController {
//private String name = "李四";
/**
* 表达式: springel表达式 简称为spel表达式
* 语法: ${表达式内容}
* 工作原理:
* 容器: 在内存中一个存储大量数据的Map集合
* 1.当SpringBoot程序启动时,首先加载application.yml的配置文件
* 2.当程序加载key-value结构时,将数据保存到Map集合中(容器内部)
* 3.利用Spel表达式,通过key,获取value,之后为属性赋值.
*/
@Value("${userinfo.name}")
private String name;
/*该注解与方法绑定 */
@RequestMapping("/hello")
public String hello(){
return "您好SpringBoot:"+name;
}
}
3.properties方式
YML文件的主要作用: 编辑SpringBoot与第三方框架的整合.
如果将大量的业务数据都写到YML文件中,则会造成业务与框架的耦合.不方便管理.
想法: 能否优化业务数据.让代码整洁.
实现策略: 通过properties的配置文件实现业务的解耦.
类上加的注解
方法上的注解