Spring Boot 基础功能

2021-05-12 17:27

阅读:575

标签:使用   ack   tap   默认端口   基于   too   程序启动   jar   idea   

2.1 基础功能

2.1.1 相关说明

功能 说明
Maven 3.3+
JDK 1.8+
Spring Boot 2.1.14.RELEASE
Spring Framework 5.1.15.RELEASE

2.1.2 构建 Spring Boot 项目

2.1.2.1 pom文件说明

添加 web 环境依赖

4.0.0org.example
    springboot-learn
    1.0-SNAPSHOT基于Spring Boot的案例jar1.8org.springframework.boot
        spring-boot-starter-parent
        2.1.14.RELEASEorg.springframework.boot
            spring-boot-starter-web
        org.springframework.boot
                spring-boot-maven-plugin
            
2.1.2.2 项目结构说明

技术图片

2.1.2.3 创建Controller
// @RestController 为组合注解,等同于 Spring中的:@Controller + @ResponseBody
@RestController
public class LearnController {

    @RequestMapping("/hello")
    public String hello() {
        return "你好 Spring Boot";
    }

}
2.1.2.4 编写启动主程序类
@SpringBootApplication
public class LearnApplication {
    public static void main(String[] args) {
        SpringApplication.run(LearnApplication.class, args);
    }
}

问题:启动主程序类的位置是否可以随便放?

2.1.2.5 运行项目

运行项目主程序启动类LearnApplication类,启动成功后,可以看见默认端口为8080

技术图片
页面输出为 “你好 Spring Boot”。

至此,构建Spring Boot项目就完成了。

2.1.3 单元测试

? 开发中,每当完成一个功能接口或业务方法编写后,通常需要借助单元测试验证功能是否正确。

Spring Boot对单元测试提供了很好的支持,在使用是,直接在pom.xml文件中添加

spring-boot-starter-test测试依赖启动器,可以通过相关注解实现单元测试。

2.1.3.1 添加依赖
org.springframework.boot
    spring-boot-starter-test
    test
2.1.3.2 编写测试代码
// 测试启动类,并加载Spring Boot测试注解
@RunWith(SpringRunner.class)
// 标记为Spring Boot单元测试类,并加载项目的ApplicationContext上下文环境
// classes 知道项目主程序启动类
@SpringBootTest(classes = LearnApplication.class)
public class LearnApplicationTest {

    @Autowired
    private LearnController learnController;

    @Test
    public void test() {
        String hello = learnController.hello();
        System.out.println(hello);
    }

}

2.1.4 热部署

? 在开发过程中,通常会对一段业务代码不断的操作修改,在修改之后往往要重启服务,有些服务需要加载很久才能启动成功,这种不必要的重复操作极大的降低了程序开发效率。为此,Spring Boot框架专门提供了进行热部署的依赖启动器,用于进行项目热部署,无需手动重启项目。

2.1.4.1 添加依赖

org.springframework.boot
    spring-boot-devtools
2.1.4.2 IDEA工具设置

选择IDEA工具界面【File】-【Settings】,打卡Compiler界面,勾选【Build project automatically】

技术图片
点击 Apply 应用,以及OK保存。

在项目任意界面使用组合快捷键【Ctrl+Alt+Shift+/】打开Maintenance选项框,选中并打开Registry页面

技术图片

技术图片

列表中找到【compiler.automake.allow.when.app.running】,将该值Value进行勾选。用于指定IDEA工具在程序运行过程中自动编译,最后单击【Close】按钮完成设置

2.1.4.3 效果测试

启动项目,访问 http://localhost:8080/hello

技术图片
修改 “你好” 为 “hello”

为了测试热部署的是否有效,接下来,在不关闭项目的情况下,将LearnController类中数据修改,并保存,查看控制台会发现项目能够自动构建和编译,说明热部署生效

技术图片

Spring Boot 基础功能

标签:使用   ack   tap   默认端口   基于   too   程序启动   jar   idea   

原文地址:https://blog.51cto.com/10960988/2504634


评论


亲,登录后才可以留言!