SpringBoot入门初探

本文主要介绍了SpringBoot的基础知识,包括配置介绍、基础使用、框架集成和原理解析。配置介绍中涉及SpringbootApplication.java、ServletInitializer.java和application.yaml的解析。在基础使用中,讲解了热部署、DEBUG模式、异常处理、配置加密以及条件装配。框架集成部分重点讨论了Thymeleaf和Mybatis的集成。最后,深入解析了SpringBoot自动装配的实现和启动类流程。
摘要由CSDN通过智能技术生成

SpringBoot

其实总结只有四个部分

  • 配置介绍

  • 基础使用

  • 框架集成

  • 原理解析

一、配置介绍

SpringbootApplication.java

package com.example.springboot;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

/*
 * 主程序
 *
 * @SpringBootApplication开启了Spring的组件扫描和springboot的自动配置功能,相当于将以下三个注解组合在了一起
 *
 * 1、@Configuration:表名该类使用基于Java的配置,将此类作为配置类。
 * 2、@ComponentScan:启用注解扫描。
 * 3、@EnableAutoConfiguration:开启springboot的自动配置功能。
 *
 * */
@SpringBootApplication
public class SpringbootApplication {
   
    public static void main(String[] args) {
   
        SpringApplication.run(SpringbootApplication.class, args);
    }
}

ServletInitializer.java

Web.xml的替代

现在JavaConfig配置方式在逐步取代xml配置方式。而WebApplicationInitializer可以看做是Web.xml的替代,它是一个接口。通过实现WebApplicationInitializer,在其中可以添加servlet,listener等,在加载Web项目的时候会加载这个接口实现类,从而起到web.xml相同的作用

(1条消息) Spring中WebApplicationInitializer的理解_小小程序猿-CSDN博客

application.yaml

  • application.properties

    • 语法结构 :key=value
  • application.yml

    • 语法结构 :key:空格 value
  • application.yaml
    • 语法结构 :同上,还可以如下
# 玩法一:
server:
  port: 7897
# 玩法二:键值对形式,注意空格
student: {
   name: text,age: 18}
# 玩法三:数组
student: [ 1,4,5,6 ]

说明:语法要求严格!

1、空格不能省略

2、以缩进来控制层级关系,只要是左边对齐的一列数据都是同一个层级的

3、属性和值的大小写都是十分敏感的

给对象赋值

yaml文件

user:
  name: test
  age: 18

实体类

package com.example.springboot.controller;


import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;


/*
@ConfigurationProperties作用:
将配置文件中配置的每一个属性的值,映射到这个组件中;
告诉 SpringBoot 将本类中的所有属性和配置文件中相关的配置进行绑定
参数 prefix = “user” : 将配置文件中的 user 下面的所有属性一一对应
*/

@Component  //注册bean到容器中
@ConfigurationProperties(prefix = "user")
public class User {
   
    private String name;
    private Integer age;
    // 此处省略了toString和get set方法
}

test.java

package com.example.springboot;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值