随着使用Spring进行开发的个人和企业越来越多,Spring从一个单一简洁的框架变成了一个大而全的开源软件,最直观的变化就是Spring需要引入的配置也越来越多。配置繁琐,容易出错,让人无比头疼,简化Spring配置简直可以说是民心所向。
 
Spring Boot是由Pivotal团队提供的一个基于Java的全新的开源框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。如今,Spring Boot逐渐成为快速应用开发领域(rapid application development)的领导者。
 
本文将使用Eclipse和Maven,实现两步快速构建一个Spring Boot项目。
 
运行环境:
  • JDK 1.8
  • Maven 3.5
  • Spring Boot 2.1.0

第一步:登录官网,下载组件

打开连接http://start.spring.io/ ,选择项目类型(Maven Project/Gradle Project),语言类型(Java/Kotlin/Groovy),Spring Boot的版本;再填入一些工程的基本信息。Group指的是工作小组或者公司的名字,对应着工程文件下面的包名;Artifact指的是工程的名字,人家Spring Boot把一个项目当做一项手工艺品,这种工匠精神,佩服。然后点击下方“Generate Project”按钮即可把新建的工程压缩包下载到本地。

第二步:导入项目,直接开发

导入步骤;File - >Import -> Existing Maven Projects -> Next ->选择解压以后的文件夹 - >Finish。

工程目录:

DemoApplication.java是Spring Boot的启动类:

package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
其核心是@SpringBootApplication注解,@SpringBootApplication告诉Spring Boot框架,这是Spring Boot服务的入口点。 
@SpringBootApplication = (默认属性)@Configuration + @EnableAutoConfiguration + @ComponentScan。
@Configuration:创建一个简单的Spring配置类,可以用来替代相应的xml配置文件。
@EnableAutoConfiguration: 自动配置Spring的上下文。
@ComponentScan:自动扫描指定包下的全部标有@Component的类,并注册成bean,包括@Component下的子注解@Service,@Repository,@Controller。

接着可以直接进行开发,编写一个Controller类。

package com.example.demo.controller;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@SpringBootApplication
@RequestMapping("/springboot")
public class HelloController {
@RequestMapping("/hello")
public String hello() {
return "Hello Spring Boot";
}
}

Spring Boot项目不需要单独部署到Tomcat或者Jetty中才能启动,通过Spring Boot启动器,SpringBoot会自动构建一个web容器,并将项目部署到其中。DemoApplication.java右键 -> Run As - > Spring Boot App,工程就启动了。

使用Postman GET方式请求http://localhost:8080/springboot/hello ,可以看到返回了“Hello Spring Boot”。

总结

由于Spring Boot的“约定优于配置”让配置更简单,可以非常方便、快速搭建项目!

只需两步!Eclipse+Maven快速构建第一个Spring Boot项目的更多相关文章

  1. 使用docker构建第一个spring boot项目

    在看了一些简单的docker命令之后 打算自己尝试整合一下docker+spring boot项目本文是自己使用docker+spring boot 发布一个项目1.docker介绍 docke是提供 ...

  2. 构建第一个Spring Boot项目

    1.启动IntelliJ IDEA,点击"Create New Project"  2.选择"Spring initializr",设定SDK及Spring ...

  3. 只需五分钟-用Maven快速搭建Spring Cloud微服务

    Maven安装手册 1.准备安装包 安装包: apache-maven-3.5.4-bin.zip  (最好JDK 1.7及以上版本) 集成包: eclipse-maven3-plugin.zip 2 ...

  4. 构建第一个 Spring Boot 工程

    Spring Boot概述 什么是Spring Boot 随着动态语言的流行,java的开发显得格外笨重,繁多的配置文件编写,低下的开发效率,复杂的部署流程以及第三方技术集成难度大. 在上述环境下Sp ...

  5. 快速创建你的第一个Spring Boot项目

    1. 创建工程 打开idea,利用Spring Boot搭建一个web工程,切身体会一下Spring Boot所带来的魅力!看看SpringBoot是如何快速搭建一个web项目. New-->P ...

  6. Eclipse创建第一个Spring Boot项目

    一.安装SpringBoot插件 安装过程需要联网下载插件,属于在线安装,请耐心等待安装完成,下载安装完成以后,需要重启Eclipse 二.创建Spring Boot项目 如下图所示new-other ...

  7. Spring Boot (1) 构建第一个Spring Boot工程

    Spring boot简介 spring boot是spring官方推出的一个全新框架,其设计目的是用来简化新spring应用的初始搭建以及开发过程. Spring boot特点 1.化繁为简,简化配 ...

  8. 社区版Intelij IDEA快速创建一个spring boot项目(找不到sping Initializer选项)

    首先作为一个初学spring boot的小白,在学习过程中肯定会遇到各种问题... So,问题出现:在我想快速创建spring boot项目时,却在新建列表中找不到sping Initializer这 ...

  9. 【代码更新】单细胞分析实录(21): 非负矩阵分解(NMF)的R代码实现,只需两步,啥图都有

    1. 起因 之前的代码(单细胞分析实录(17): 非负矩阵分解(NMF)代码演示)没有涉及到python语法,只有4个python命令行,就跟Linux下面的ls grep一样的.然鹅,有几个小伙伴不 ...

随机推荐

  1. BZOJ_3969_[WF2013]Low Power_二分答案

    BZOJ_3969_[WF2013]Low Power_二分答案 Description 有n个机器,每个机器有2个芯片,每个芯片可以放k个电池. 每个芯片能量是k个电池的能量的最小值. 两个芯片的能 ...

  2. BZOJ_1014_[JSOI2008]火星人prefix_splay+hash

    BZOJ_1014_[JSOI2008]火星人prefix_splay+hash 题意:火星人最近研究了一种操作:求一个字串两个后缀的公共前缀.比方说,有这样一个字符串:madamimadam, 我们 ...

  3. 一步一步理解 python web 框架,才不会从入门到放弃 -- 简单登录页面

    上一节,我们基本了解了 Django 的一些配置,这一节,我们将通过一个简单的登录页面,进一步学习 Django 的使用. 新建项目 首先,新建一个 Django 项目,记得别弄错了哦. settin ...

  4. Detours HOOK 库 过滤LoadLibraryExW

    Detours HOOK 库 Hook 过滤LoadLibraryExW 一丶简介 1.1 Detours库简介 Detours是微软提供的HOOK库.为我们Hook提供了方便.再也不用手撸 HOOK ...

  5. 一线互联网企业常见的14个Java面试题,Java面试题集大全等你拿,颤抖吧程序员!

    本文由尚学堂学员们根据自己参加过的面试回忆.总结而成,一线互联网企业常见的14个Java面试题,包括各大互联网企业.创业小公司,互联网企业.传统软件公司.对于刚毕业和想要跳槽的宝宝们,再适用不过啦,赶 ...

  6. zabbix微信报警信息优化模板

    --------------------------------告警模板1-------------------------------------- 默认标题 告警项目: {TRIGGER.NAME ...

  7. centos7开放端口和防火墙设置

    centos7开放端口和防火墙设置. 查看防火墙状态: firewall-cmd --state 如果显示: not running 打开防火墙服务: systemctl start firewall ...

  8. centos 修改hostname

    centos修改主机名的正确方法 1 centos6下修改hostname [root@centos6 ~]$ hostname # 查看当前的hostnmae centos6.magedu.com ...

  9. 第9章 设备授权端点(Device Authorization Endpoint) - IdentityModel 中文文档(v1.0.0)

    OAuth 2.0设备流设备授权的客户端库是作为HttpClient扩展方法提供的. 以下代码发送设备授权请求: var client = new HttpClient(); var response ...

  10. 有源点最短路径--Dijkstra算法

    问题描述:一个带权有向图G与源点v,求从源点v到G中其他顶点的最短路径,并限定各边权值大于0 它的思想在于,对顶点集划分为两组,第一组为已经求出的最短路径的集合(S),期初只有一个顶点,此后每求出一个 ...