SpringBoot入门

SpringBoot入门

 


SpringBoot入门

添加依赖

<!-- 继承spring-boot-starter-parent,实现一站式开发-->
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.1.6.RELEASE</version>
</parent>

<dependencies>
    <!-- 做web,使用web启动器-->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
</dependencies>

<!-- 这个插件,可以将应用打包成一个可执行的jar包
  在cmd使用,浏览器看效果即可 用ctrl+c停止
-->
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
<!--如果cmd运行报错jar中没有主清单属性,添加此段配置 -->
<executions>
    <execution>
        <goals>
            <goal>repackage</goal>
        </goals>
    </execution>
</executions>
</plugin>
    </plugins>
</build>

编写Controller类

@Controller
public class HelloController {
    @ResponseBody
    @RequestMapping("/")
    String home() {
        return "Hello World!";
    }
}

编写主程序入口,启动main可在浏览器输入http://localhost:8080/查看

@SpringBootApplication //坑1:注意默认扫包访问,启动类的位置最好高于其他包
public class Example {

    public static void main(String[] args) {
        SpringApplication.run(Example.class, args);
    }
}

配置文件

Springboot默认做了很多配置,如果想修改,使用一个全局的配置文件,

配置文件名是固定的;•application.properties  •application.yaml

可以通过配置文件修改信息.如果端口server.port=8080

@Value 使用此注解取配置文件的值

取默认配置application.properties的值

1. application.properties配置文件
person.name="张三"
person.pid=18
person.address=[1,2,3]

2.实体类中使用
  @Component
public class Person {
    @Value("${person.pid}")
    private int pid;
    @Value("${person.name}")
    private String name;
    @Value("${person.address}")
    private List<String> address;
 …}
1.2.1.2取自己配置文件tina.properties的值,搭配@PropertySource
//默认引入的是application.properties,想引入其他文件,只用此注解
1.在resources文件夹下新建tina.properties文件
person.name="张三"
person.pid=18
person.address=[1,2,3]
2.在实体类中取值   使用@PropertySource指定属性文件的位置
@Component
@PropertySource(value="classpath:tina.properties")
 public class Person {
    @Value("${person.pid}")
    private int pid;
    @Value("${person.name}")
    private String name;
    @Value("${person.address}")
private List<String> address;
1.2.2@ConfigurationProperties可将配置文件中的对象和实体进行关联
1.添加依赖
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
</dependency>
2.属性配置类编写值
person.name="tina"
person.pid=19
person.address=[1,2,3]
3.实体中,发现已经不需要使用value取值,会根据对应的前缀找到属性,自动注入
@Component
@ConfigurationProperties(prefix = "person")
//如果是在application.properties中,无需此注解
@PropertySource(value = "classpath:tina.properties") 
  public class Person {
    private int pid;
    private String name;
    private List<String> address;
}
1.2.3@ImportResource加载xml,后都由配置类替换
//可以引入xml文件
@ImportResource(locations = {"classpath:bean.xml"})
public class xx{
}

启用Springboot测试

添加依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
</dependency>

编写测试类,添加注解@RunWith@SpringBootTest

@RunWith(SpringRunner.class)
@SpringBootTest(classes ={Example.class})
public class TestMain {
    @Resource //会自动注入
    Person person;

    @Test
    public void test() {
        System.out.println(person);
    }
}
原文地址:https://www.cnblogs.com/yssmt/p/12249608.html