SpringBoot快速入门
2017-07-21 本文已影响64人
lavor
SpringBoot快速入门
用Intellij Idea快速建立一个SpringBoot工程,新建一个Project(或者Module)。
温馨提示:连不上https://start.spring.io可以去掉https中的s。
SpringBoot工程建好了以后,来看看工程目录:
好奇宝宝有问题
-
我建立的应该是web工程吧,怎么没有webapp目录啊,那我们的web页面存放在哪里?
从工程目录上,我们可以看到resources
目录下面有一个static
目录可以用来存放静态资源(比如html,js,css,image等等),有一个templates
用来存放模板文件(就是动态页面资源),模板文件可以存放Thymeleaf templates(推荐),FreeMarker templates,Groovy templates。 -
页面不在webapp目录下面,那我们怎么部署web应用啊?
SpringBoot默认会启动一个内嵌的Tomcat,不用我们手动部署web应用,程序会帮我们自动部署。 -
没有xml配置文件,web.xml里面的配置与SpringMVC的配置是在哪里进行的?
SpringBoot会进行很多默认的配置对其进行设置:- 内嵌Tomcat的默认端口是:8080
-
DispatcherServlet
:我们知道要使用SpringMVC必须要在web.xml里面配置DispatcherServlet
,SpringBoot帮我们自动配置了,它的url-pattern是/
- SpringBoot默认会扫描启动类所在包下面的配置的Bean
- SpringBoot默认开启了静态资源的访问
启动类
工程目录有一个启动类:DemoApplication
@SpringBootApplication
注解上面有三个重要的注解:
-
@SpringBootConfiguration
:
该注解下面有一个重要的注解@Configuration
,熟悉SpringMVC的朋友应该都知道它的意义,它可以使用JavaConfig的形式配置Bean。 -
@EnableAutoConfiguration
:
该注解有点复杂,可以先只知道它的作用就行,它会尝试根据你添加的jar依赖自动配置你的Spring应用。 -
@ComponentScan
:
该注解的意义也显而易见,扫描所在包中的组件(@Controller,@Service,@Repository,@Component,@Configuration中的@Bean),为它们装配Bean,相当于xml配置中的<context:component-scan>
。
运行程序
直接运行程序,是看不到web效果的。
创建一个java类:
运行程序,在浏览器中输入
http://localhost:8080/sayHello
在static
目录中创建一个index.html
文件:
运行程序,在浏览器中输入http://localhost:8080/index.html
程序运行成功后控制台中重要信息如下:
application.properties
application.properties
文件,顾名思义,是进行应用程序属性配置的。其具体可以配置的通用属性及其默认值参见附录
我们看还可以在Java代码中通过注解得到里面的属性值:
- 在
application.properties
文件中输入com.lavor.github=https://github.com/lavor-zl
- 在文件中通过
@Value
注解获取属性值
- 运行程序,访问
http://localhost:8080/github
这说明我们成功的获取到了application.properties
中com.lavor.github
对应的属性值。