springboot的相关知识点

框架搭建

1.IDE新建项目,选择maven上面的Spring Initializr,点next,java项目选8,discription(描述),可以自己发挥,next,勾选web。

2.将五个文件删掉, ....Application是程序主入口,不能删也不能改。之后,建包都是在与这个主入口同级下建包。

3.建包下面可以写class文件了,先@RestController,在class之前。class之后,@RequestMapping("/hello") //这是接口。

列如:
@RestController
public class HelloController {
   //接口为:http://localhost:8080/hello
   @RequestMapping("/hello")

   public String hello()
  {
       return "hello,world!";
  }
}

修改端口号

到springboot配置文件下(resources---》application.properties)加上:

server.port=7442 //从8080改到7442了。

 

修改log

可以找自己喜欢的图案复制下来,然后在resources下面建一个文件file,命名为banner.txt ,然后将复制的图案粘贴在这里就可以了。重启即可。

 

 

yaml配置文件

xml配置文件不够主流了。

Springboot使用一个全局的配置文件,配置文件名称是固定的

  1. application.properties

    语法结构:key=value

  2. application.yml

    语法结构:key:空格value

配置文件的作用:修改springboot自动配置的默认值,因为springboot在底层都给我们自动配置好了。

 

运用:删掉application.properties文件,在原来的位置新建文件,名字依然是application,后缀是.yml即可。(官方更愿意这种方式)

name: qingjiang     #普通的key=value

# 对象
student:
name:qingjiang
age:3
(注意对空格十分严格 ,如果age多空了一个格,就是三个对象了,不是student.name和student.age的写法了)  

 
# 行内写法
student:{name: qingjiang,age: 3}

#数组
pets:
  -cat
  -dog
  -pig
 
pets: [cat,dog,pig]

properties只能保存键值对,做不到上面的。

 

易错点

在同级扫描的那个下面建的包,里面的class,搞好之后,需要先无参构造,在有参,在setget。大兄弟错了两次了,还没有加toString方法,否则输出的将会是路径,而非对象。

 

将yaml文件,和普通需要赋值的文件用他关联。

@ConfigurationProperties(prefix = "person")

放在普通文件当中。双引号当中的对象,必须与yaml文件里面的一致。这里就是绑定的意思。

 

 

如果我们在某个业务中,只需要获取配置文件中的某个值,可以使用一下@Value

如果说,我们需要专门编写了一个javaBean来和配置文件进行映射,就直接使用@configurationProperties不要犹豫。

 

 

使用yaml,可以实现里面多环境转换。

用---分开。列如

server:
 port: 8081
     
---
server:
 port:8082
spring:
 profiles: dev
     
---
server:
 port:8083
spring:
 profiles: test
     
     
默认走8081,如果要走第二个,需要在8081下面加上
Profiles:
 active: dev
 
 
 

1.一系列过程做好了,包括删除文件。

2.先在....application同级建包,然后新建class文件。

3.写上有什么属性,先无参构造,在有参构造,然后在getset方法,最后在tosring方法。

4.删掉resources下面的application.properties核心配置文件,在该位置新建application.yaml文件。写名字(上面创建的class的方法名),要一致。

基础篇里面有,注意分号后面的空格。

5.绑定:@ConfigurationProperties(prefix = "yaml文件里面的名字"),这是写在普通class里面的。还有一个注解@Component

6.在测试类里面进行测试。class之外有@SpringBootTest注解

@SpringBootTest
class Demo6ApplicationTests {
   @Autowired
   private Person person;
   @Test
   void contextLoads() {
       System.out.println(person);
  }
}
 

 

Swagger

现在前后端分离:Vue+Springboot

在项目中使用swagger需要springbox

在pom.xml配置文件里面<dependencies> </dependencies>之间添加下面两个。即可

1.swagger2

<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger2 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> </dependency>

2.ui

<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger-ui --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.9.2</version> </dependency>

 

在能扫描的同级建一个包(config),建一个类(SwaggerConfig)

配置到springboot里面去,需要配置swagger的Docket的bean实例。

如下图所示:

 

 

posted @ 2022-07-31 22:27  锦书南辞  阅读(37)  评论(0编辑  收藏  举报