1 检查Maven私服镜像位置

检查Maven私服镜像的地址

 <mirror><id>aliyun</id><name>aliyun for maven</name><mirrorOf>*</mirrorOf><url>https://maven.aliyun.com/repository/public</url></mirror>

2 IDEA安装SpringBoot插件

添加插件之后,重启IDEA即可.

3 IDEA创建SpringBoot

1).挑选SpringBoot

2).编辑模块内容

3).选择jar包依赖

4 SpringBoot项目创建方式2

4.1选择maven项目

4.2 构建项目

4.3 编辑POM.xml文件

<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.3.3.RELEASE</version><relativePath/> <!-- lookup parent from repository --></parent><properties><java.version>1.8</java.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope><exclusions><exclusion><groupId>org.junit.vintage</groupId><artifactId>junit-vintage-engine</artifactId></exclusion></exclusions></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build>

4.4编辑主启动类

package com.jt;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication  //添加SpringBoot注解
public class SpringBootRun {public static void main(String[] args) {SpringApplication.run(SpringBootRun.class,args);}
}

5 SpringBoot配置说明

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.jt</groupId><artifactId>springboot_demo1</artifactId><version>0.0.1-SNAPSHOT</version><name>springboot_demo1</name><description>入门案例</description><!--parent标签作用: 定义了SpringBoot中所有关联项目的版本号信息.--><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.3.3.RELEASE</version><relativePath/> <!-- lookup parent from repository --></parent><properties><java.version>1.8</java.version><!--项目打包时,跳过测试类打包--><skipTests>true</skipTests></properties><!--开箱即用:SpringBoot项目只需要引入少量的jar包及配置,即可拥有其功能.spring-boot-starter 拥有开箱即用的能力.maven项目中依赖具有传递性.A 依赖  B  依赖 C项目   导入A bc会自动依赖--><dependencies><!--直接依赖web springMVC配置--><dependency><groupId>org.springframework.boot</groupId><!--springBoot-start SpringBoot启动项  --><artifactId>spring-boot-starter-web</artifactId></dependency><!--SpringBoot重构了测试方式 可以在测试类中 直接引入依赖对象--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope><exclusions><exclusion><groupId>org.junit.vintage</groupId><artifactId>junit-vintage-engine</artifactId></exclusion></exclusions></dependency></dependencies><!--在项目打包部署时生效,如果不添加build,则程序发布时不然会报项目中没有main方法.--><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>

6 SpringBoot启动原理说明

1.SpringBoot整体运行流畅?
2.SpringBoot为什么可以开箱即用? 看注解的底层

7 关于SpringBoot配置文件说明

7.1 properties说明

说明:
1.pro文件本身是key-value结构的,并且本身都是字符串的定义.
2.SpringBoot程序读取pro文件默认使用ISO-8859-1格式编码. 如果需要读取pro文件,则需要手动的指定UTF-8格式.

7.2yml配置文件

# yml 1.key-value结构
#     2.key-value之间使用": "方法链接
#     3.YML配置文件有缩进的效果.
#     4.YML配置文件默认采用utf-8编码.
server:servlet:context-path: /  #设定项目发布路径port: 8090

8 配置文件为属性赋值的方式

8.1 业务场景

场景:需要实现文件上传操作,需要指定文件上传的目录.如果将上传文件的目录信息直接写死到代码中,这样的代码耦合性高.不便于扩展.

8.2 利用@Value方式赋值

8.2.1 编辑YML配置文件

# yml 1.key-value结构
#     2.key-value之间使用": "方法链接
#     3.YML配置文件有缩进的效果.
#     4.YML配置文件默认采用utf-8编码.
server:servlet:context-path: /  #设定项目发布路径port: 8090#配置图片上传路径
image:localDir: D:/JT-SOFT/images

8.2.2 编辑FileController

package com.jt.controller;import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
public class FileController {//问题:如何将配置作为动态的获取?????@Value("${image.localDir}") //spel表达式Spring框架所提供的.private String localDir;    // = "D:\\JT-SOFT\\images"; //如果放到这里则代码的耦合性高.@RequestMapping("/getPath")public String getPath(){System.out.println("指定图片地址:"+localDir);return "图片地址为:"+localDir;}
}

8.3 指定配置文件为属性赋值

需求: YML配置文件是SpringBoot整合第三方配置文件,如果将业务配置与YML配置写到一起,则不方便管理.能否在指定的配置文件(pro)中实现属性的赋值.

8.3.1 编辑Pro文件

8.3.2指定字符编码格式

8.3.3 编辑FileController

package com.jt.controller;import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.PropertySource;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
//导入配置文件,之后由Spring容器扫描
@PropertySource(value = "classpath:/properties/image.properties", encoding = "UTF-8")
public class FileController {@Value("${image.localDir}") //spel表达式Spring框架所提供的.private String localDir;    // = "D:\\JT-SOFT\\images"; //如果放到这里则代码的耦合性高.@RequestMapping("/getPath")public String getPath(){System.out.println("指定图片地址:"+localDir);return "图片地址为:"+localDir;}
}

9 热部署

9.1添加jar包

     <!--支持热部署 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId></dependency>

9.2编辑IDEA

组合键: ctrl + alt + shirt + /

10 环境切换

10.1业务场景

一般开发时使用的都是测试环境.当项目上线时需要在生产环境下部署项目.
问题: 在测试环境中的配置与生产环境下的配置可能不一致,经常需要修改IP地址及端口.
想法:能否简化该操作?
策略:指定多个运行环境. 当现在处于测试环境时,让配置文件指向测试. 反之做相同的操作.

10.2 编辑YML配置文件

# 测试环境 /jt 端口号 8095    生产环境: /  端口号8090   配置必须完整.
#设定默认的环境
spring:profiles:active: test---
# yml 1.key-value结构
#     2.key-value之间使用": "方法链接
#     3.YML配置文件有缩进的效果.
#     4.YML配置文件默认采用utf-8编码.#定义环境名称
spring:profiles: prod
server:servlet:context-path: /  #设定项目发布路径port: 8090#配置图片上传路径
#image:#localDir: D:/JT-SOFT/images#设定分割线
---
# 设定环境名称
spring:profiles: testserver:servlet:context-path: /jt  #设定项目发布路径port: 8095

10.3配置LomBok

10.3.1添加jar包文件

<!--引入插件lombok 自动的set/get/构造方法插件  -->
<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId>
</dependency>

10.3.2 添加注解

package com.jt.pojo;import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;@Data  //set/get/toString方法只会重写自己的属性,不会添加父级的属性
@Accessors(chain = true) //链式加载规则
@NoArgsConstructor       //无参构造
@AllArgsConstructor      //全参构造
public class User {private Integer id;private String name;private Integer age;private String sex;//accessors重写了set方法/* public User setId(Integer id){this.id = id;return this;}*/}

10.3.3 面试题

问:项目发布是在Linux中发布的,LomBok的使用一般都需要安装插件.问题:如果在Linux中发布项目,是否需要重写安装LomBok插件.

答案: 不需要
原有: Lombok是编辑期有效.重写了set/get/toString等方法. 编辑期指代码由.java文件编译为.class文件.

SpringBoot加强相关推荐

  1. 继承WebMvcConfigurer 和 WebMvcConfigurerAdapter类依然CORS报错? springboot 两种方式稳定解决跨域问题

    继承WebMvcConfigurer 和 WebMvcConfigurerAdapter类依然CORS报错???springboot 两种方式稳定解决跨域问题! 之前我写了一篇文章,来解决CORS报错 ...

  2. Dockerfile springboot项目拿走即用,将yml配置文件从外部挂入容器

    Dockerfile 将springboot项目jar包打成镜像,并将yml配置文件外挂. # 以一个镜像为基础,在其上进行定制.就像我们之前运行了一个 nginx 镜像的容器,再进行修改一样,基础镜 ...

  3. SpringBoot部署脚本,拿走即用!

    一个可以直接拿来使用的shell脚本,适用于springboot项目 #!/bin/bash # 这里可替换为你自己的执行程序,其他代码无需更改,绝对路径相对路径均可. # 若使用jenkins等工具 ...

  4. SpringBoot项目使用nacos,kotlin使用nacos,java项目使用nacos,gradle项目使用nacos,maven项目使用nacos

    SpringBoot项目使用nacos kotlin demo见Gitte 一.引入依赖 提示:这里推荐使用2.2.3版本,springboot与nacos的依赖需要版本相同,否则会报错. maven ...

  5. springboot整合swagger2之最佳实践

    来源:https://blog.lqdev.cn/2018/07/21/springboot/chapter-ten/ Swagger是一款RESTful接口的文档在线自动生成.功能测试功能框架. 一 ...

  6. SpringBoot中实现quartz定时任务

    Quartz整合到SpringBoot(持久化到数据库) 背景 最近完成了一个小的后台管理系统的权限部分,想着要扩充点东西,并且刚好就完成了一个自动疫情填报系统,但是使用的定时任务是静态的,非常不利于 ...

  7. Springboot 利用AOP编程实现切面日志

    前言 踏入Springboot这个坑,你就别想再跳出来.这个自动配置确实是非常地舒服,帮助我们减少了很多的工作.使得编写业务代码的时间占比相对更大.那么这里就讲一下面向切面的日志收集.笔者使用lomb ...

  8. 【Springboot】日志

    springBoot日志 1.目前市面上的日志框架: 日志门面 (日志的抽象层):                JCL(Jakarta Commons Logging)                ...

  9. 【springboot】配置

    配置文件 SpringBoot使用一个全局的配置文件,配置文件名是固定的: •application.properties •application.yml 配置文件的作用:修改SpringBoot自 ...

  10. 【springboot】入门

    简介: springBoot是spring团队为了整合spring全家桶中的系列框架做研究出来的一个轻量级框架.随着spring4.0推出而推出,springBoot可以説是J2SEE的一站式解决方案 ...

最新文章

  1. 云计算的8个常见用途
  2. [我的1024开源程序]30元写的广义误差分布函数
  3. python3(四)Pandas库
  4. CentOS 6.4 yum安装LAMP环境
  5. 【华为云技术分享】漫谈Huawei LiteOS五大内核模块
  6. webpack打包样式资源_使用loader去打包css文件_打包less文件---webpack工作笔记004
  7. 如何删除拒绝访问的文件
  8. dwm1000 用c语言控制,DWM1000 测距原理简单分析(示例代码)
  9. ArduinoUNO实战-第十七章-火焰传感器
  10. 用Java检验统一社会信用代码是否为真
  11. 图解!24张图彻底弄懂九大常见数据结构!
  12. 北邮计算机学院复试分数线,2018年北京邮电大学复试分数线
  13. android 后台实时定位,实现后台定位,持续无限制定位
  14. 猪年开年喜报—涛思数据完成 Pre A轮融资
  15. vue设置video图片_vue-video-player视频播放器使用配置详解
  16. 【conda】conda环境的复制移植的两种方法
  17. C语言程序设计-五子棋游戏设计系统01
  18. math: 车辆转弯半径/akerman结构转弯半径
  19. ueditor图片上传 flash插件初始化失败
  20. Linux内核机制总结内存管理之页表缓存(十九)

热门文章

  1. cadence 常见pcb电阻_Cadence PCB SI
  2. DBeaver 超级详细的安装与使用
  3. Emscripten 单词_【英语高考】高中人教版英语 必修15单词朗读汇总
  4. 关于机器人机械臂参数辨识
  5. java并发编程第一课 线程的创建、停止和状态变更
  6. Excel统一删除指定字符长度的文本内容
  7. 自然语言处理及计算语言学相关术语中英对译表(A~L)
  8. 开办企业的步骤和流程
  9. 用计算机弹c哩c哩简谱数字,【扒谱】2020哔哩哔哩拜年祭部分数字谱
  10. Microsoft SQL Server 2005 中安装 Northwind 和 pubs 示例数据库