一、SpringBoot简介

  开发团队:Pivotal团队

  主要目的:简化新Spring应用的初始搭建以及开发过程。

  秉持理念:约定优于配置。(该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置)

二、SpringBoot的特点

  1、快速创建独立的Spring应用程序。

    Spring Boot 并不是对 Spring 功能上的增强,而是提供了一种快速使用 Spring 的方式

  2、嵌入的Tomcat,不需要部署war文件

  3、简化了Maven的配置

  4、自动装配Spring

  5、开箱即用,没有代码生成、也不需要XML的配置

  6、是微服务的入门级框架,SpringBoot是SpringCloud的基础  

  7、提供生产就绪功能:如指标、健康检查、外部配置等

三、玩耍环境推荐

  Maven 3.3.9 + JDK1.8 + IDEA (Ultimate)

  有关Maven的配置以及IDEA中配置Maven可以看我的另一篇博客

      http://www.cnblogs.com/zmfx/p/8903871.html

四、创建首个SpringBoot项目

  新建Sring Initalizr项目

  然后点击next,显示为下面这张图片

  这里我就不建什么helloworld、hellospringboot之类的项目了,注意工程名字要全小写,package配置的是包名,可以根据自己的喜爱设置,然后点击next

这里我们选择web工程,然后next

这里是让我们选择自己的工作路径,建议不要包含中文路径,点击finish

下面,我们可以删除一些暂时用不到的文件夹和文件(一共是3个)

注意我使用的springboot版本号为2.0.1.RELEASE,尽量和我一致,不能然后面我所使用的方法你可能用不了。

  

如果这里显示为红色的话,是因为maven还没有把所需要的依赖下载到本地仓库。

pom.xml文件基本上是这样的

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <groupId>com.zmfx</groupId>
<artifactId>dog</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging> <name>dog</name>
<description>Demo project for Spring Boot</description> <parent><!--定义了SpringBoot的版本信息-->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties> <dependencies>
<!--对于web的依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
c <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies> <build>
<plugins>
<plugin><!--SpringBoot的基本配置-->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build> </project>

当所有的maven依赖下载完毕的时候,你项目的目录结构样子大体应该是这个样子的

依然是老套路,新建一个HelloController,来和SpringBoot打个招呼吧

package com.zmfx.hello;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController; /**
* 这里的@RestController 相当于@ResponseBody + @Controller
*/
@RestController
public class HelloController {
@RequestMapping(value = "/hello",method = RequestMethod.GET)
public String helloSpringBoot(){
return "Hello SpringBoot!";
}
}

我们点击IDEA的运行按钮,然后在控制台会看到SpringBoot内置的Tomcat访问的默认端口号8080

  

然后在网址中输入 http://127.0.0.1:8080/hello  页面会展示 Hello SpringBoot!

说明我们成功的使用SpringBoot项目和SpringBoot打过招呼了

这里需要说明一下,SpringBoot的启动类 DogApplication

package com.zmfx;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication //用来声明这是启动SpringBoot程序的启动类,必须有
public class DogApplication {
public static void main(String[] args) {
SpringApplication.run(DogApplication.class, args);
}
}

今天就先分享到这里,后面的知识会陆续以博客的方式分享出来。

SpringBoot入门(IDEA篇)(一)的更多相关文章

  1. SpringBoot 入门实战篇

    SpringBoot入门 使用SpringBoot + mysql + Jpa 快速搭建一个spring项目 Spring Boot 2 + Spring Data JPA + MySQL 8 簡單範 ...

  2. ①SpringBoot入门教学篇

    一.什么是spring boot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发 ...

  3. SpringBoot入门学习看这一篇就够了

    1.SpringBoot是什么? SpringBoot是一套基于Spring框架的微服务框架. 2.为什么需要SpringBoot 由于Spring是一个轻量级的企业开发框架,主要的功能就是用于整合和 ...

  4. SpringBoot入门教程(二)CentOS部署SpringBoot项目从0到1

    在之前的博文<详解intellij idea搭建SpringBoot>介绍了idea搭建SpringBoot的详细过程, 并在<CentOS安装Tomcat>中介绍了Tomca ...

  5. SpringBoot入门基础

    目录 SpringBoot入门 (一) HelloWorld. 2 一 什么是springboot 1 二 入门实例... 1 SpringBoot入门 (二) 属性文件读取... 16 一 自定义属 ...

  6. 【Java】SpringBoot入门学习及基本使用

    SpringBoot入门及基本使用 SpringBoot的介绍我就不多说了,核心的就是"约定大于配置",接下来直接上干货吧! 本文的实例: github-LPCloud,欢迎sta ...

  7. SpringBoot入门(三)——入口类解析

    本文来自网易云社区 上一篇介绍了起步依赖,这篇我们先来看下SpringBoot项目是如何启动的. 入口类 再次观察工程的Maven配置文件,可以看到工程的默认打包方式是jar格式的. <pack ...

  8. SpringBoot入门(四)——自动配置

    本文来自网易云社区 SpringBoot之所以能够快速构建项目,得益于它的2个新特性,一个是起步依赖前面已经介绍过,另外一个则是自动配置.起步依赖用于降低项目依赖的复杂度,自动配置负责减少人工配置的工 ...

  9. SpringBoot入门(二)——起步依赖

    本文来自网易云社区 在前一篇我们通过简单几步操作就生成了一个可以直接运行的Web程序,这是因为SpringBoot代替我们做了许多工作,概括来讲可以分为起步依赖和自动配置.这一篇先来看看起步依赖. 项 ...

  10. SpringBoot入门系列(转)

    SpringBoot入门系列:第一篇 Hello World http://blog.csdn.net/lxhjh/article/details/51711148

随机推荐

  1. sqlserver中怎么查询字段为空的记录

    sqlserver中怎么查询字段为空的记录的两种方法: 详细介绍请查看全文:https://cnblogs.com/qianzf/ 原文博客的链接地址:https://cnblogs.com/qzf/

  2. 2018.08.22 NOIP模拟 string(模拟)

    string [描述] 给定两个字符串 s,t,其中 s 只包含小写字母以及*,t 只包含小写字母. 你可以进行任意多次操作,每次选择 s 中的一个*,将它修改为任意多个(可以是 0 个)它的前一个字 ...

  3. hdu-1877(大数+进制转换)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1877 思路:注意考虑0,0的情况. #include<iostream> #include ...

  4. Mysql字符串字段判断是否包含某个字符串的3种方法[转载]

    方法一: SELECT * FROM users WHERE emails like "%b@email.com%"; 方法二: 利用mysql字符串函数 find_in_set( ...

  5. java最全的Connection is read-only. Queries leading to data modification are not allowed

    Connection is read-only. Queries leading to data modification are not allowed 描述:框架注入时候,配置了事物管理,权限设置 ...

  6. UVa 12230 && HDU 3232 Crossing Rivers (数学期望水题)

    题意:你要从A到B去上班,然而这中间有n条河,距离为d.给定这n条河离A的距离p,长度L,和船的移动速度v,求从A到B的时间的数学期望. 并且假设出门前每条船的位置是随机的,如果不是在端点,方向也是不 ...

  7. (水题) Div 3 -- SGU -- 105

    链接: http://vj.acmclub.cn/contest/view.action?cid=168#problem/E 时限:250MS     内存:4096KB     64位IO格式:%I ...

  8. Delphi Dll 动态调用例子(1)

    http://blog.sina.com.cn/s/blog_62c46c3701010q7h.html 一.编写dll library TestDllByD2007; uses  SysUtils, ...

  9. 【Win10】页面的导航效果

    CommonNavigationTransitionInfo ContinuumNavigationTransitionInfo DrillInNavigationTransitionInfo Ent ...

  10. laravel字段自增/自减

    DB::table('users')->increment('votes');DB::table('users')->increment('votes', 5);DB::table('us ...