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文件加上

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

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

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

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

在浏览器输入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程序。

每次编译的时候都要启动程序,是非常麻烦的,辛亏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>

SpringBoot1-创建SpringBoot项目的更多相关文章

  1. SpringBoot-(1)-IDEA创建SpringBoot项目并运行访问接口

    一,安装IDEA mac安装IDEA IDEA配置Tomcat 二,创建SpringBoot项目 1,打开IDEA,点击Create New Project 2,选择自己所安装的JDK.如果没有配置J ...

  2. SpringBoot01 InteliJ IDEA安装、Maven配置、创建SpringBoot项目、属性配置、多环境配置

    1 InteliJ IDEA 安装 下载地址:点击前往 注意:需要下载专业版本的,注册码在网上随便搜一个就行啦 2 MAVEN工具的安装 2.1 获取安装包 下载地址:点击前往 2.2 安装过程 到官 ...

  3. eclipse 创建springboot项目

    eclipse创建springboot项目的三种方法: 引自:https://blog.csdn.net/mousede/article/details/81285693

  4. 使用spring initialization创建SpringBoot项目

    https://blog.csdn.net/liutong123987/article/details/79385513 有很多方法可以快速创建Springboot项目,可以通过idea的spring ...

  5. 使用idea创建springboot项目并打成war包发布到weblogic上

    部署tomcat也是类似的,但是需要注意项目配置的路径,或者直接将项目放到webapp的ROOT目录下. 使用工具:intelliJ IDEA2016.3, jdk1.8 ,weblogic12 一 ...

  6. SpringBoot01 InteliJ IDEA安装、Maven配置、创建SpringBoot项目、yml属性配置、多环境配置、自定义properties配置

    1 IntelliJ IDEA 安装 下载地址:点击前往 注意:需要下载专业版本的,注册码在网上随便搜一个就行啦 2 MAVEN工具的安装 2.1 获取安装包 下载地址:点击前往 2.2 安装过程 到 ...

  7. 2springboot:快速创建springboot项目

    使用IDEA快速创建springboot项目流程: 创建新的项目选择 项目的命名以及包名 需要什么包就导入什么包 进行测试的单元 <dependency> <groupId>o ...

  8. 怎么创建SpringBoot项目

    上述中讲到了怎么创建SpringBoot项目,那么现在就来介绍下SpringBoot配置文件的两种格式yml和properties 首先呢发上一份application.properties 在放上一 ...

  9. Spring-boot(一)通过向导快速创建Spring-boot项目

    通过向导快速创建Spring-boot项目 创建步骤: 选择Spring Initializr 填写组织和模块名 选择对应的模块 注:这里左侧的模块比较多,玩家可以根据自己的实际需要自由选择,此处暂时 ...

  10. eclipse下载SpringBoot插件及创建SpringBoot项目

    一.eclipse在线下载SpringBoot插件 1.help->eclipse marketplace->popular-选择spring tool suite(STS)进行下载 ​ ...

随机推荐

  1. 用html和css制作奥运五环

    <html><head><meta charset="utf-8"> <style>.circle1,.circle2,.circl ...

  2. Linux内存管理(二)

    Linux内存管理之二:Linux在X86上的虚拟内存管理 本文档来自网络,并稍有改动. 前言 Linux支持很多硬件运行平台,常用的有:Intel X86,Alpha,Sparc等.对于不能够通用的 ...

  3. [Codeforces178F2]Representative Sampling

    Problem 给定n个字符串Si,任意选出k个字符串Ai,使得其中任意两个字符串lcp之和最大. Solution 建一棵trie树,枚举每一个节点对答案的贡献,树形dp,时间复杂度像是O(N^3) ...

  4. 电梯问题——致敬ACM

      The Fair Nut and Elevator     time limit per test 1 second memory limit per test 256 megabytes inp ...

  5. 记录Linux CentOS 7系统完整部署Docker容器环境教程

    笔者之前有在"详细介绍Ubuntu 16.04系统环境安装Docker CE容器的过程"文章中有介绍到利用Ubuntu系统安装Docker容器环境的过程.如果我们有使用CentOS ...

  6. C++11 相关教程

    C++11 中文wiki: https://zh.wikipedia.org/zh-cn/C%2B%2B11 C++11 新特性介绍: https://www.kancloud.cn/wangshub ...

  7. tomcat中配置ssl的http协议

    问题: IDEA配置tomcat后运行时报如下错误: Error running wis-client-web: SSL HTTP Connector node not found: set up o ...

  8. jq后加标签的事件(live事件)

    在使用中  live可以对未来元素起作用(比如:js后加的div等)   live在jq1.9以上版本已经废除 原:$('#del').live('click',function(){}) 改:$(' ...

  9. java web后台工作原理

    多时候我们都想知道,web容器或web服务器(比如Tomcat或者jboss)是怎样工作的?它们是怎样处理来自全世界的http请求的?它们在幕后做了什么动作?Java Servlet API(例如Se ...

  10. SharePoint Framework 在web部件中使用已存在的JavaScript库 - JavaScript库的格式

    博客地址:http://blog.csdn.net/FoxDave JavaScript库格式 不同的JavaScript库的编译和打包方式各不相同.一些是以模块的方式打包的,而另一些是以纯脚本运行在 ...