操作:
1.使用STS或者IntelliJ IDEA开发spring boot比较方便
2.在http://start.spring.io 网站创建一个maven项目com.wl.firstSpringBoot,添加web模块,然后下载解压
3.使用STS的import导入一个已存在的maven项目,默认STS自带maven,然后就等待maven下载库文件
4.启动SpringBootApplication,看到图样则启动成功可以在浏览器http://localhost/ 测试
一 目录结构resources:
static:静态资源(js css 图片 音频 视频)
templates:模版文件(模版引擎freemarker, thymeleaf,默认不支持jsp)
application.properties:配置文件
二 spring boot包括什么
spring boot 内置了tomcat,并且不需要打成war再执行,可以在application.properties对端口号等服务端信息进行配置
spring boot将各个应用/三方框架,设置成了一个个“场景”starter,以后要使用哪个,只需要引入哪个场景即可。选完之后,spring boot就会将该场景所需要的所有的依赖自动注入。例如:选择“web” 就会将web相关的依赖(tomcat json)全部引入本项目
操作:
1.在src/main/java下com.wl.firstSpringBoot包创建一个子包controller
2.在此目录下创建一个类如下
@Controller
public class HelloWorldController {
@ResponseBody
@RequestMapping("/hello")
public String hello() {
return "hello world!";
}
}
3.重启项目后,测试http://localhost:8080/hello
-- 解释:因为默认会自动把com.wl.firstSpringBoot以及其子目录的组件都纳入spring容器,我们不需要在主类上再加@ComponentScan("com.wl.firstSpringBoot.Controller")
三 主要配置类
@SpringBootApplication: spring boot的主配置类,该注解包括
@SpringBootConfiguration: 启动配置
@EnableAutoConfiguration: 是否自动配置
- 解释:1.某个类声明有@Configuration,表示该类是“配置类”
2.加了@Configuration类,会自动纳入Spring容器
@ConditionalOnXXXXX : 当条件成立则启动配置(通常在配置文件中)
总结:(都不需要我们配置了)
1.自己写的代码,spring boot通过@SpringBootConfiguration自动帮我们配置
2.三方依赖通过spring-boot-autoconfigure-2.0.3.RELEASE.jar中的
META-INF/spring.factories进行声明,然后开启使用
操作:
修改 application.properties:
spring.http.encoding.charset=UTF-16 #更改默认字符编码
debug=true #看看开启和关闭了哪些自动装配