初始化Spring Boot项目 & 入口类

 

1.使用Spring Initializer 初始化Spring Boot项目

     Spring Initializer 是一个Web应用程序,可以生成Spring Boot项目结构以及一个用于构建代码的Maven构建说明文件。Spring Initializer有几种用法:通过Web界面,通过Spring Tool Suite,通过IntelliJ IDEA,通过Spring Boot CLI

     通过Web界面 使用 Spring Initializer 初始化Spring Boot项目。访问https://start.spring.io/  在页面上选择 项目构建类型如Maven,项目的Artifact和Group,项目的起步依赖,打包类型如jar或war。然后点击 Generate Project。然后解压生成的zip文件,就是一个Spring Boot空项目。

     通过IDE--Spring Tool Suite 使用 Spring Initializer 初始化Spring Boot项目。 New > Spring Starter Project菜单项 其实 Spring Tool Suite的Spring Starter Project对话框,就是把项目生成的工作委托给http://start.spring.io上的Spring  Initializr来做的。不过使用Spring Tool Suite可以直接 Run菜单里选中Run As > Spring Boot
Application,在嵌入式服务器里运行你的应用程序。

PS:其实都是差不多,就是需要选择 项目构建类型如Maven,项目的Artifact和Group,项目的起步依赖,打包类型如jar或war 等选项。 

2.运行Spring Boot项目

 1.在 ide里选择 在启动引导类上右键  run as -> Spring Boot App

2. 使用mvn 在pom.xml文件所在文件夹 打开cmd ,执行mvn 命令:mvn spring-boot:run

3.Spring Boot入口类 

      Spring Boot通常有一个*Application的入口类,这个入口类使用@SpringBootApplication注解 表明该类 是应用程序的配置类和启动引导类。先说配置类:这里可以先看下 Spring Boot @SpringBootApplication注解的源码,从源码可以看出,org.springframework.boot. autoconfigure.SpringBootApplication  是一个组合注解,它组合了很多个注解,主要的有以下3个 

     1.Spring @ComponentScan ,  启用组件扫描,这样程序里的控制器类和其他组件才能被自动发现并注册为Spring应用程序上下文里的Bean 

     2.Spring @Configuration :标明该类是配置类,使用Spring基于Java的配置 (@SpringBootApplication组合@SpringBootConfiguration, @SpringBootConfiguration 组合了@Configuration)

     3.Spring Boot的@EnableAutoConfiguration:开启Spring Boot的自动配置--让Spring Boot根据类路径中的jar包依赖进行自动配置,应用程序不再需要写大量的配置。比如使用了spring-boot-starter-jpa依赖,Spring Boot会自动进行JPA相关配置。

     所以使用@SpringBootApplication注解的类  也相当于 普通Spring MVC项目里的配置类 搭建Spring MVC Web项目----JavaConfig 的WebConfig配置类(不过如果应用程序需要用到除了Spring Boot自动配置外的其它Spring配置,最好再建一个@Configuration注解的配置类)。但是 这个类不仅是配置类,它还是一个启动引导类再说启动引导类: 这个类有一个main方法,这个main方法实质上是一个标准的java应用入口方法,在main方法中使用SpringApplication.run(*Application.calss,args)来启动Spring Boot应用程序。  PS:要运行Spring Boot应用程序,也可以通过原来那种war包部署方式,把它部署到服务器中(比如Tomcat)。 

    如果要关闭特定的自动配置,使用@SpringBootApplication注解的exclude参数

@SpringBootApplication(exclude={DatasourceAutoConfiguration.calss})

3.Spring Boot的全局配置文件

    Spring Boot的全局配置文件  通常在src/main/resource目录或者类路径的config目录下 名为application.properties。它的作用是对一些默认配置的 配置值进行修改。 PS:除了properties配置文件,Spring Boot 还支持yaml语言的配置文件,不细说这个。比如要修改Tomcat的默认端口号8080为9090,并将默认的访问路径"/"修改为"helloboot"。可以在application.properties文件中添加:

server.port =9090
server.context-path = /helloboot

Spring Boot的pom.xml文件:

Spring Boot的构建插件(如Maven插件)的功能 :把项目打包成一个可执行的超级JAR文件,包括把应用程序的所有依赖打包入JAR文件内,并为JAR添加一个描述文件,其中的内容能让我们用java -jar 来运行应用程序。

Maven构建说明中还将spring-boot-starter-parent作为上一级,这样一来就能利用Maven的依赖管理功能,继承很多常用库的依赖版本,在你声明依赖时就不用再去指定版本号了。

posted on 2019-05-17 14:30  dreamstar  阅读(347)  评论(0编辑  收藏  举报