SpringBoot 学习笔记(一)
1.配置SpringBoot pom.xml
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.1.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
2.编写Example示例
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@EnableAutoConfiguration
public class Example {
@RequestMapping("/")
String home(){
return "Hello World!";
}
public static void main(String[] args) throws Exception {
SpringApplication.run(Example.class,args);
}
}
@RestController 称之为构造型注释
将当前Example类解释为web@Controller,Spring在处理传入的Web请求时会考虑它。
@RequestMapping 注释提供"路由"信息
它告诉Spring任何带有"/"路径的HTTP请求都应该映射到home方法。
@RestController注释告诉Spring将结果字符串直接呈现给调用者。
@EnableAutoConfiguration注释
这个注释告诉Spring Boot根据你添加的jar依赖关系“猜测”你想要如何配置Spring。
Main中的方法
我们的主要方法是通过调用run来委托Spring Boot的SpringApplication类。从Spring开始,然后启动自动配置的Tomcat Web服务器。我们将Example.class作为参数传递给run方法,以告诉SpringApplication哪个是主要的Spring组件,还会传递args数组以公开任何命令行参数。
发现正在应用不需要的特定自动配置类,则可以使用@EnableAutoConfiguration的exclude属性禁止它们。
@EnableAutoConfiguration(exclude = {DataSourceAutoConfiguration.class})
3.Spring Boot三种启动方式
1.IDEA 部署运行
package com.createros.firstspringboot;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class FirstSpringbootApplication {
public static void main(String[] args) {
SpringApplication.run(FirstSpringbootApplication.class, args);
}
}
2.Spring Boot本身就是一个Maven项目
mvn spring-boot:run
3.项目打成JAR包,运行
maven clean package
java -jar first-springboot.jar
4.@Configuration @Bean
@Coniguration 相当于XML中的
@Bean 相当于XML中的
package com.createros.firstspringboot.config;
import com.createros.firstspringboot.entity.User;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class UserConfig {
@Bean
public User user(){
User user = new User();
user.setId(1);
user.setName("CreaterOS");
return user;
}
}
<beans>
<bean id="方法名 | @Bean自定义name的名称" class="com.craeteros.firstspringboot.entity.User">
</bean>
</beans>
@Autowired
private User user;
@GetMapping("user")
public User user(){
return user;
}