SpringBoot1-创建SpringBoot项目

时间:2023-03-09 20:06:14
SpringBoot1-创建SpringBoot项目

Spring Boot这两年的发展迅速,很多公司都在用,社区也越来越活越。本人也是基于此框架开发了几个项目,特和各位广大同行分享一下自己的心得体会。

Spring Boot基于约束大于配置,开箱即用,不用很多的xml配置,可以快速启动开发一个项目。在以往基于Spring开发的项目中,会用到很多繁琐的XML配置,做配置都要花很久时间,耗费很多精力。

Spring Boot应用程序与其Spring生态系统(如Spring JDBC,Spring ORM,Spring Data,Spring Security等)集成非常容易。它提供嵌入式HTTP服务器,如Tomcat,Jetty等,以开发和测试Web应用程序非常容易。

它提供CLI(命令行界面)工具从命令提示符,非常容易和快速地开发和测试Spring Boot(Java或Groovy)应用程序。它提供了许多插件,以便与嵌入式和内存数据库工作非常容易。

它提供了许多插件来开发和测试Spring启动应用程序非常容易使用构建工具,如Maven和Gradle。

当然了把以前的项目Spring项目转换成Spring boot项目几乎是不可能的,个人建议仅适合新项目的开发。

那我们首先了解一下Spring Boot启动过程。

首先创建一个Maven项目,pom.xml文件加上

SpringBoot1-创建SpringBoot项目

在包含启动public static void main( String[] args )文件加上@SpringBootApplication 然后再main函数里加上SpringApplication.run(App.class, args);

SpringBoot1-创建SpringBoot项目

启动 有时候会出现端口被占用,这时候在src/main.resources文件下创建resource.yml或者resource.properties文件,个人觉得resource.yml比较好用,今后的项目我就用resource.yml,设置端口号9000,如下

SpringBoot1-创建SpringBoot项目

写个请求,类似于如下,切记App.class所在的包,一定是在其他包的主目录

SpringBoot1-创建SpringBoot项目

启动后,如下图,就表示启动成功

SpringBoot1-创建SpringBoot项目

在浏览器输入http://localhost:9000/hello?name=jim 返回json字符串,证明请求成功。

打开主入口的注解@SpringBootApplication,你会发现发现有三个注解:

@EnableAutoConfiguration:SpringBoot根据应用所声明的依赖来对Spring框架进行自动配置;

@SpringBootConfiguration(内部为@Configuration):被标注的类等于在spring的XML配置文件中(applicationContext.xml),装配所有bean事务,提供了一个spring的上下文环境;

@ComponentScan:组件扫描,可自动发现和装配Bean,默认扫描SpringApplication的run方法里的App.class所在的包路径下文件,所以将该启动类放到根包路径下;

用main方法里的runSpringApplication.run() 启动程序,你会发现没有一个xml配置,就可以启动一个java程序。

SpringBoot1-创建SpringBoot项目

每次编译的时候都要启动程序,是非常麻烦的,辛亏spring-boot做了一个包,spring-devtool,加上去,重新启动,每次修改代码,就不需要反复启动了。

<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-devtools -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
</dependency>