1 创建一个Maven空白项目
pom.xml配置信息
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.6</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>spring-boot</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>spring-boot</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
2 创建 主程序 类
MainApplication(名字自定)
@SpringBootApplication
public class MainApplication {
public static void main(String[] args) {
SpringApplication.run(MainApplication.class,args);
}
}
springboot 配置类
//Full、全配置 lite类配置
// Full=proxyBeanMethods = true
// Lite=proxyBeanMethods = false
// 组件依赖
@Configuration(proxyBeanMethods = true) //等同于 配置文件
public class MyConfig {
/*
* 外部无论对配置类中的这个组件的注册方法调用多少次都是之前注册容器中的单实例;
* */
@Bean //给容器中添加组件,以方法名为组件的id,返回类型就是组件类型,返回的值就是组件在容器中的实例
public User user01(){
User zhangsan= new User("zhangsan",18);
zhangsan.setPet(tomcatPet());
return zhangsan;
}
@Bean("tom")
public Pet tomcatPet(){
return new Pet("tomcat");
}
}
3 写一个简单的业务
新建controller包新建一个HelloController
/*@RestController相当于@ResponseBody + @Controller的合体*/
@RestController
public class HelloController {
@RequestMapping("/hello")
public String handle01(){
return "Hello,Spring Boot2!";
}
}
然后直接运行主程序
浏览器输入 默认端口8080
http://localhost:8080/hello
就会看到hello方法的结果
Spring boot配置文件
在resources新建application.properties文件进行配置
SpringBoot帮我们配置好了所有web开发的常见场景
默认的包结构:
主程序所在包及其下面的所有子包里面的组件都会被默认扫描进来
无需以前的包扫描配置;
想要改变扫描路径,@SpringBootApplication(scanBasePackages="com.atguigu")
或者@ComponentScan 指定扫描路径