SpringBoot快速入门

字数 730阅读 112

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.propertiescom.lavor.github对应的属性值。

推荐阅读更多精彩内容