SpringBoot快速学习

目录

SpringBoot配置文件

多环境配置

SpringBoot整合junit

SpringBoot整合mybatis

1.在创建时勾选需要的模块

2.定义实体类

3.定义dao接口

4.编写数据库配置

5.使用Druid数据源

SpringBoot 是对 Spring 开发进行简化的。

那我们先来看看SpringMVC开发中的一些必须流程。

从上面的 SpringMVC 程序开发可以看到,前三步都是在搭建环境,而且这三步基本都是固定的。SpringBoot 就是对这三步进行简化了。

对比一下 Spring 程序和 SpringBoot 程序。

使用SpringBoot后

我们只需要定义Controller和Application

java 复制代码
@RestController
@RequestMapping("/books")
public class BookController {

    @GetMapping("/{id}")
    public String getById(@PathVariable Integer id){
        System.out.println("id ==> "+id);
        return "hello , spring boot!";
    }
}

引导类

java 复制代码
@SpringBootApplication
public class Springboot01QuickstartApplication {
    
    public static void main(String[] args) {
        SpringApplication.run(Springboot01QuickstartApplication.class, args);
    }
}

SpringBoot配置文件

SpringBoot的配置文件application.yml application这个名称不能改变

java 复制代码
server:
	port: 82

怎么读取yml文件的配置数据

假如yml文件的数据如下:

java 复制代码
lesson: SpringBoot

server:
  port: 80

enterprise:
  name: itcast
  age: 16
  tel: 4006184000
  subject:
    - Java
    - 前端
    - 大数据

使用 @Value("表达式") 注解可以从配合文件中读取数据,注解中用于读取属性名引用方式是:${一级属性名.二级属性名......}

java 复制代码
@RestController
@RequestMapping("/books")
public class BookController {
    
    @Value("${lesson}")
    private String lesson;
    @Value("${server.port}")
    private Integer port;
    @Value("${enterprise.subject[0]}")
    private String subject_00;

    @GetMapping("/{id}")
    public String getById(@PathVariable Integer id){
        System.out.println(lesson);
        System.out.println(port);
        System.out.println(subject_00);
        return "hello , spring boot!";
    }
}

多环境配置

以后在工作中,对于开发环境、测试环境、生产环境的配置肯定都不相同,比如我们开发阶段会在自己的电脑上安装 mysql ,连接自己电脑上的 mysql 即可,但是项目开发完毕后要上线就需要该配置,将环境的配置改为线上环境的。

SpringBoot整合junit

在与引导类对应的测试文件的包目录下,创建测试类,然后在类上添加@SpringBootTest 注解和在方法上添加@Test注解

SpringBoot整合mybatis

1.在创建时勾选需要的模块

2.定义实体类

3.定义dao接口

4.编写数据库配置

5.使用Druid数据源

相关推荐
橙淮3 分钟前
Spring Bean作用域与生命周期全解析
java·spring
Chengbei1120 分钟前
一站式源码安全检测工具、云安全 / APP / 小程序源码敏感信息递归多层目录扫描AK、JWT、手机号、身份证等敏感信息
java·开发语言·安全·web安全·网络安全·系统安全·安全架构
eggcode21 分钟前
【Qt学习】Linux(ARM架构)在线安装Qt6.x
linux·qt·学习·arm
llz_11226 分钟前
web-第一次课后作业
java·开发语言·idea
秋941 分钟前
Java项目运行5天左右自动宕机:系统性定位与解决方案
java·开发语言·python
小江的记录本1 小时前
【JVM虚拟机】垃圾回收GC:垃圾收集器:CMS:核心原理、回收流程、优缺点、废弃原因(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·spring·面试·maven
DIY源码阁1 小时前
JavaSwing学生成绩管理系统 - MySQL版
java·数据库·mysql·eclipse
_李小白2 小时前
【android opencv学习笔记】Day 26: 滤波算法之低通滤波与图像缩放插值
android·opencv·学习
basketball6162 小时前
C++ NULL 和 nullptr 区别 以及 nullptr 的核心实现
java·开发语言·c++