专栏首页郭少华Spring boot之Hello World(一)

Spring boot之Hello World(一)

什么是Spring boot?

  • Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。

Spring boot 特性

  • 创建独立的Spring应用程序
  • 嵌入的Tomcat,无需部署WAR文件
  • 简化Maven配置
  • 自动配置Spring
  • 提供生产就绪功能,如指标健康检查为外部配置
  • 开箱即用没有代码生成也无需XML配置

Spring boot特性理解

为基于Spring的开发提供更快的入门体验 开箱即用,没有代码生成,也无需XML配置。同时也可以修改默认值来满足特定的需求。 提供了一些大型项目中常见的非功能特性,如嵌入式服务器、安全、指标,健康检测、外部配置等。 Spring Boot并不是对Spring功能上的增强,而是提供了一种快速使用Spring的方式。

简单的Spring boot程序

开发准备

  • 开发环境JDK 1.8
  • 开发工具(IDEA)
  • 项目管理工具( Maven )

创建Maven Project

image.png

image.png

Hello World 之pom.xml

<!-- 
spring boot 父节点依赖,引入这个之后相关的引入就不需要添加version配置,spring boot会自动选择最合适的版本进行添加。
 -->
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.4.1.RELEASE</version>
</parent>

<!-- 
java.version 指定jdk版本号:
 -->
<java.version>1.8</java.version>

<!-- 
添加spring-boot-starter-web依赖
 -->
<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
</dependency>

image.png

新建一个Controller类

package com.springboot.backstage.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

//SpringBoot提供了refult风格
// @RestController相当于@Controller和@ResponseBody
@RestController
public class HellController {
 /**
 *这里使用@RequestMapping建立请求映射
 *http://127.0.0.1:8080/hello
 */
 @RequestMapping("/hello")
    public String hello(){
        return "hello";
    }
}

新建启动类新建启动类(SpringBootApp – Main方法)

//第一种写法
package com.springboot.backstage.controller;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.ComponentScan;

//表示程序启动时自动加载springboot默认配置
@EnableAutoConfiguration
//指定扫描的包去掉basePackages扫描所有
@ComponentScan(basePackages = "com.springboot.backstage.controller")
public class SpringBootApp {
    public static void main(String[] args) {
       SpringApplication.run(SpringBootApp.class,args);
    }
}
//第二种写法
package com.springboot.backstage.controller;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class SpringBootApp {
    public static void main(String[] args) {
       SpringApplication.run(SpringBootApp.class,args);
    }
}

测试代码

运行main函数启动成功

image.png

image.png

重点

@RestController 相当于@Controller和@ResponseBody

@SpringBootApplication 这里主要关注@SpringBootApplication注解,它包括三个注解: @Configuration:表示将该类作用springboot配置文件类。 @EnableAutoConfiguration:表示程序启动时,自动加载springboot默认的配置。 @ComponentScan(basePackages="com.XX.controller"):表示程序启动是,自动扫描当前包及子包下所有类。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Spring Boot 日志(八)

    Spring Boot在所有内部日志中使用Commons Logging,但是默认配置也提供了对常用日志的支持,如:Java Util Logging,Log4...

    楠楠
  • Mac os使用技巧

    在mac os中,非root用户是无法使用小于1024的常用端口的。如果开发中需要用到80端口, 就要设置端口转发。

    楠楠
  • Spring boot热部署(三)

    CTRL + SHIFT + A --> 查找make project automatically --> 选中

    楠楠
  • 代码编排架构三部曲简述

    本文将基于三种常见的编码处理场景,介绍 Event Reactive 的代码编排架构。

    用户1516716
  • 代码编排架构三部曲简述

    本文将基于三种常见的编码处理场景,介绍 Event Reactive 的代码编排架构。

    heidsoft
  • 微服务[学成在线] day12:基于 Nuxt.js 构建搜索前端工程

    知识点结合实战应用会更有意义,所以这里我就不再对单个知识点进行拆分成单个笔记,内容会比较多,这里我们可以根据目录进行按需阅读。一、搜索前端技术需求

    LCyee
  • 动手构建地铁关系网,实现最短路径查询

    打开手机‘北京地铁’APP,输入起始点:霍营,终点:北京南站,发现系统给我们推荐了两条路线。 最短时间路线与最少换乘路线,并且分别给出了耗时与乘坐里程费。看到...

    大道七哥
  • 速读原著-GRUB_多系统引导(GRUB 明口令加密)

    从上面的可以看出,GRUB的密码是123456,lock的意思就是把Redhat Fedora锁住了。如果启动时会提示错误。这时就应该按P键,然后输入密码就行了...

    cwl_java
  • Spring(5)——Spring 和数据库编程

    传统 JDBC 回顾 JDBC 我们一定不陌生,刚开始学习的时候,我们写过很多很多重复的模板代码: public Student getOne(int id) ...

    我没有三颗心脏
  • 【好资源】强化学习圣经《强化学习导论》第二版(附PDF下载)

    今天推荐 Richard S. Sutton 教授与 Andrew G. Barto 教授合著的《强化学习导论(第二版)》, Richard S. Sutton...

    小白学视觉

扫码关注云+社区

领取腾讯云代金券