介绍

  Spring Boot跟Spring MVC不太一样,Spring MVC建新项目的时候是要配置很多东西的,而Spring Boot讲究的是快速,提供了很多默认配置,所以新建一个项目不需要手动配置任何东西,并且个性化配置也比Spring MVC简单很多。

创建新项目

  • 创建一个新项目,Maven
  • 输入GroupId和ArtifactId

  • 输入项目名称并指定项目存放的路径

  • 引入SpringBoot

打开pom.xml,引入SpringBoot

 <parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.2.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>

  如果提示是否需要开启自动导入,选择Enable Auto-Import,否则更改了pom.xml不会自动更新

  • 创建Application

  创建SampleApplication,加上注解@SpringBootApplication,这个类的main方法就会成为整个程序的入口,@EnableAutoConfiguration开启自动配置,如果有需要,可以通过@ComponentScan再指定自动扫描的包

 package com.springboot.sample;

 import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication; @EnableAutoConfiguration
@SpringBootApplication
public class SampleApplication { public static void main(String[] args) throws Exception {
SpringApplication.run(SampleApplication.class, args);
} }
  • 创建Controller

    • 创建SampleController,并注解@Controller,加上访问路径的注解
    • 在SampleController内创建一个home方法,在方法上注解@RequestMapping("/"),这样就根目录的访问路径注册到这个方法上,当访问http://localhost:8080的时候,就会执行这个方法
    • 这里还注解了@ResponseBody,表示输出Hello World!字符串
 package com.springboot.sample.controller;

 import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody; @Controller
public class SampleController {
/**
* ResponseBody样例
* @return
*/
@RequestMapping("/")
@ResponseBody
String home() {
return "Hello World!";
}
}
  • 运行配置

  Run - Run Configurations

+ - Applicaltion,Main-Class选择最开始创建的SampleApplication
Spring Boot是不需要发布到外部Tomcat的,所以确定后直接运行即可

  • 测试

运行完成后,在浏览器访问http://localhost:8080,就可以看到SampleController的home方法返回的Hello World!了

  • thymeleaf支持

在Spring Boot中,官方是不推荐使用JSP的,所以我们需要用thymeleaf模板

  • 引入thymeleaf

pom.xml加入依赖

<!--thymeleaf-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
  • 创建模板html

  在resources文件夹下创建templates文件夹,再创建一个index.html

  • 配置访问路径

  在之前创建的SampleController增加了一个index方法,路径配置到/index,这里加入一个message参数传到页面,再return "index",这样当访问http://localhost:8080/index的时候,就会跳转到resources/templates文件夹下面的index.html

/**
* thymeleaf样例
* @return
*/
@RequestMapping("/index")
String index(Model model) {
model.addAttribute("message","Hello Thymeleaf");
return "index";
}
  • 在模板html获取参数

  在index.html中,用thymeleaf语法获取SampleController添加的message参数。

<p th:text="${message}"></p>

注意还要在html标签上加上命名空间

xmlns:th="http://www.w3.org/1999/xhtml"

  如果你用的是Vue,还需要在script标签上加上th:inline

<script th:inline="javascript">

  • 测试

  在浏览器访问http://localhost:8080/index

  • 导出可执行jar

  在pom.xml指定包类型并添加插件

<packaging>jar</packaging>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>

  执行package命令

  等待编译成功,会在工程目录的target文件夹下生成一个jar

  • 运行jar

命令行cd到target目录

java -jar sample-1.0.0.jar

SpringBoot快速开始Hello World的更多相关文章

  1. SpringData 基于SpringBoot快速入门

    SpringData 基于SpringBoot快速入门 本章通过学习SpringData 和SpringBoot 相关知识将面向服务架构(SOA)的单点登录系统(SSO)需要的代码实现.这样可以从实战 ...

  2. springboot快速使用

    1.编写SpringConfig 用于实例化Spring容器 @Configuration //通过该注解来表明该类是一个Spring的配置,相当于一个xml文件 @Bean // 通过该注解来表明是 ...

  3. 使用Springboot快速搭建SSM框架

    Spring Boot设计目的是用来简化Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置. 一.环境准备 Idea 2017 或 201 ...

  4. SPRING-BOOT系列之SpringBoot快速入门

    今天 , 正式来介绍SpringBoot快速入门 : 可以去如类似 https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/refer ...

  5. SpringBoot快速入门01--环境搭建

    SpringBoot快速入门--环境搭建 1.创建web工程 1.1 创建新的工程. 1.2  选择maven工程,点击下一步. 1.3 填写groupid(maven的项目名称)和artifacti ...

  6. springboot 快速开发的定制补充

    增强 SpringBoot 快速开发工具 项目地址:https://gitee.com/sanri/web-ui 优点:这是一个 web 通用配置的组件,即插即用,可用于新项目或私活.是对 Sprin ...

  7. SpringBoot 快速构建微服务体系 知识点总结

    可以通过http://start.spring.io/构建一个SpringBoot的脚手架项目 一.微服务 1.SpringBoot是一个可使用Java构建微服务的微框架. 2.微服务就是要倡导大家尽 ...

  8. SpringBoot基础篇-SpringBoot快速入门

    SpringBoot基础 学习目标: 能够理解Spring的优缺点 能够理解SpringBoot的特点 能够理解SpringBoot的核心功能 能够搭建SpringBoot的环境 能够完成applic ...

  9. Springboot快速入门篇,图文并茂

    Springboot快速入门篇,图文并茂 文章已托管到GitHub,大家可以去GitHub查看阅读,欢迎老板们前来Star!搜索关注微信公众号 [码出Offer] 领取各种学习资料! image-20 ...

  10. SpringBoot快速入门(实战篇一)

    SpringBoot快速入门(一) 一SpringBoot简介 1.spring开发经历的阶段 Spring 诞生时是 Java 企业版(Java Enterprise Edition,JEE,也称 ...

随机推荐

  1. Centos6.5 安装MYSQL 5.5 -5.6.-5.7 一键yum快速安装 ,初始配置

    Centos6.5 安装MYSQL 5.5 ---5.6---5.7 一键yum快速安装 ,初始配置 第一步:安装mysql-5.5---- 5.6 ---- 5.7的yum源 [root@sv03 ...

  2. OO第一次博客总结

    虽然早在开学之前就已耳闻过OO这门课的威力,也在寒假自学了一些java的语法,但在真正面对OO这样的工程训练时才发现寒假所学的那点语法简直不值一提,也深刻的感受到在这个过程中自己的提升确实很快,毕竟d ...

  3. 基于Fusioncharts的报表统计

    先了解fusioncharts插件,fusioncharts是一款基于XML和flash的报表组件,支持Java.PHP.AngularJS等等开发语言,所以,开发出来,加入swf文件,就可以出现动态 ...

  4. MySQL分布式事物(XA事物)的使用

    有时一个系统的数据 放在不同的库之中.如果用普通的事物 一个分支库提交成功了,另外一个分支库提交失败了, 这候 两个库没有同步的成功或者失败.会导致系统数据的不完整. 对于处理这种情况 MySQL有了 ...

  5. extends的使用

    继承extends的使用 继承(extends):           继承让我们可以更好的实现类的扩展.           继承的使用要点:               1.父类也称作超类.基类. ...

  6. Tools - 负载性能测试工具JMeter

    JMeter简介 HomePage:http://jmeter.apache.org/ Apache JMeter是Apache组织开发的基于Java的开源负载性能测试工具. 可以用于对服务器.网络应 ...

  7. LVS DR模式配置

    关于LVS的相关介绍,以下两篇文章均做了具体的介绍: http://www.linuxvirtualserver.org/zh/lvs1.html http://www.cnblogs.com/liw ...

  8. sleep( ) 和 wait( ) 的这 5 个区别,你知道几个?

    sleep(休眠) 和 wait(等待) 方法是 Java 多线程中常用的两个方法,它们有什么区别及一些该注意的地方有哪些呢?下面给大家一一分解. 区别1:使用限制 使用 sleep 方法可以让让当前 ...

  9. PostgreSQL踩坑现场

    1.PostgreSQL表名.字段名.别名等大小敏感,默认都会转化成小写形式.如果名字中有大写字母,必须分别添加双引号.在写后台时,注意添加\ 如表名:TestTable中有个字段名userName ...

  10. 使用C# (.NET Core) 实现迭代器设计模式 (Iterator Pattern)

    本文的概念来自深入浅出设计模式一书 项目需求 有两个饭店合并了, 它们各自有自己的菜单. 饭店合并之后要保留这两份菜单. 这两个菜单是这样的: 菜单项MenuItem的代码是这样的: 最初我们是这样设 ...