一 什么是springboot

  springboot是一个全新的框架,它设计的目的简化spring项目的初始环境的搭建和开发,主要有以下几个特点:

  1、简化初始配置 ,可与主流框架集成;

  2、内置Servlet容器,无需在打War包;

  3、使用了Starter(启动器)管理依赖并版本控制;

  4、大量的自动配置,简化开发,方便集成第三方;

  5、提供准生产环境运行时的监控,如指标,健康,外部配置等;

  6、无需XML配置,减少冗余代码 。

  未使用springboot时,如果我们要搭建一个springweb项目环境,我们需要配置web.xml及各种xml的配置文件来集成其他第三方的框架,而这些springboot已经帮我们做了集成,我们不再需要去配置。

二 入门实例

  创建springboot项目有2中方式,1种是通过ide来创建,一种是官方网站创建(https://start.spring.io创建完成后会将工程下载到本地)然后导入ide即可,本文我们通过idea创建项目。

  1 在idea的工具栏 file-->new project 如下图

会弹出选择工程类型的框,如下图

这个时候我们有2种选择,一种是使用Spring Initializr创建,一种是使用Maven或者Gradle创建。这两种方式的不同的地方是使用方法二创建的是空项目,我们需要自己去修改添加所需要的依赖,方式一在创建的过程中,我们可以在ide中直接选择需要的依赖且会生成一个项目的根启动类。本文我们使用Spring Initializr来创建项目。点击上图的Next

输入Group、Artifact、Package的对应的信息,再点击next

这是我们可以选择我们的项目要运行的springboot的版本和需要的依赖包(本文我们只选择依赖web),然后点击Next

这是弹框会显示我们项目的名称及项目的路径,点击Finish。初始时会下载springboot默认依赖的一些jar包,需要一会时间,我们等待它下载完成。之后我们可以看到项目的结构

pom.xml内容如下,2.0.8版本不是一个发布版本,在我们的实际项目中,最好还是要引用release版本的。

<?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>org.allen.demo</groupId>
<artifactId>springboot-helloworld</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging> <name>springboot-helloworld</name>
<description>Demo project for Spring Boot</description> <parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.8</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>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency> <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies> <build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build> </project>

生成的启动类,一个可执行的main方法。

package org.wl.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication
public class HelloWorldApplication { public static void main(String[] args) {
SpringApplication.run(HelloWorldApplication.class, args);
}
}

默认在类上边使用了@SpringBootApplication注解,这个注解是一个符合注解,相当于同时使用

@SpringBootConfiguration  指定类为配置类
@EnableAutoConfiguration  开启自动配置
@ComponentScan 指定扫描路径

下来创建一个可以访问的控制器,使用@RestController注解,它是一个复合注解,相当于同时使用了@Controller和@ResponseBody注解

package org.wl.demo.web;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; @RestController
public class HelloController { @RequestMapping("/hello")
public String hello(){
return "hello world";
} }

执行main方法,启动项目,在控台可可以看到启动的日志信息

[           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
[ main] org.wl.demo.HelloWorldApplication : Started HelloWorldApplication in 3.591 seconds (JVM running for 4.784)

内嵌的tomcat服务器已经启动,启动端口是8080,更路径是'',我们访问控制器的hello方法

这样一个web项目环境就搭建成功了,使用起来还是很简单方便的。

在上边的日志信息中,默认启动端口是8080,访问根路径是‘’,如果我们希望修改的话也是可以的,只需要在application.properties中修改

修改端口,从默认的8080修改为8090

server.port=8090

修改根路径 修改前是‘’,修改后为‘/helloworld’

server.servlet.context-path=/helloWorld

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

  1. SpringBoot入门(0) HelloWorld的实现与原理分析

    SpringBoot(0) HelloWorld的实现与原理分析 一.环境准备 1.1 环境约束 –jdk1.8:Spring Boot 推荐jdk1.7及以上:java version “1.8.0 ...

  2. SpringBoot入门系列HelloWorld

    根据咱们程序员学习的惯例,学习一门新技术都是从HelloWorld开始的. 感觉编程是一件非常富有意义的事情,程序员也是一群可爱的人,渴望被关怀和关注,因为我们总在和世界say Hi. 好了进入正题 ...

  3. SpringBoot入门之HelloWorld

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

  4. springboot入门学习-helloworld实例

    今天学习了springboot,发现使用springboot创建项目确实非常方便,创建第一个springboot项目之前先看一下下面两个问题. 一.什么是springboot? Spring Boot ...

  5. SpringBoot入门基础

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

  6. (一)IDEA工具开第一个springboot应用之helloworld

    (一)IDEA工具开第一个springboot应用之helloworld 一.前置知识 1.maven相关知识 2.spring注解 3.RESTful API 二.idea开发第一个springbo ...

  7. 物联网架构成长之路(13)-SpringBoot入门

    1. 前言 下载最新版的JavaEE eclipse-jee-oxygen-2-win32-x86_64.zip 安装STS插件 Window->Eclipse Marketplace -> ...

  8. SpringBoot入门(一)——开箱即用

    本文来自网易云社区 Spring Boot是什么 从根本上来讲Spring Boot就是一些库的集合,是一个基于"约定优于配置"的原则,快速搭建应用的框架.本质上依然Spring, ...

  9. springBoot入门教程(图文+源码+sql)

    springBoot入门 1   springBoot 1.1 SpringBoot简介 Spring Boot让我们的Spring应用变的更轻量化.比如:你可以仅仅依靠一个Java类来运行一个Spr ...

随机推荐

  1. html.EditorForModel自定义模版

    https://www.cnblogs.com/lori/p/5969658.html  http://www.cnblogs.com/yinzixin/archive/2012/12/18/2821 ...

  2. Android-Java-Thread start run的区别

    Thread start(Thread子类.start(); 这样属于开启新的线程,不属于方法调用) Thread.currentThread().getName(); 获取当前正在运行的线程执行路径 ...

  3. Android-普通菜单Menu

    第一种方式,使用Java方式 第二种方式,使用menu.xml package liudeli.activity; import android.app.Activity; import androi ...

  4. Windows下VM安装MacOS

    我们在使用Windows操作系统的情况下,不去买苹果电脑,想去玩玩Mac苹果操作系统,有两种选择,一种就是安装黑苹果(就是在非苹果电脑上安装MacOS)这种方式不推荐,因为你会遇到很多很多不兼容问题, ...

  5. C#写文本文件,如何换行(添加换行符)

    把文本写到文件中,如果是几段文字拼合起来输出到文件中,通常每段非结尾文字后需要添加换行符,不然几段文字都变成一段. 在 C# 中,文本换行有两种方法,一种在需要换行的文本后面添加换行符 \r\n 即可 ...

  6. 对Cookie和Session的理解

    本篇文章系自己总结经验,如果有朋友感觉哪里有问题,欢迎留言评论,谢谢~! Cookie和Session的产生背景: 在动态页面里面,每个变量都是有有效期的,所有的变量的最大生命周期就是一个脚本的周期( ...

  7. 在vs 调试进程中找不到 w3wp.exe 进程

    问题如图所示: 解决办法: 1. 启动iis(internet information services)服务. 2. 打开左侧网站列表=> 右键点击自己配置的网站 => 点击管理网站 = ...

  8. Xamarin.Forms第三方XAML预览工具-LiveXAML简单体验

    截至目前,Xamarin官方的Xaml Previewer工具仍然处于测试阶段,使用中也发现了各种不便,例如各种莫名其妙的渲染失败,或者提示需要编译项目才能渲染等等,复杂项目基本不可用, 完全没有体现 ...

  9. 使用MEF与Castle实现AOP

    MEF是微软的一个ioc框架,使用非常方便,我们只需要在需要导出的类上标记[Export],在需要使用的地方[import]就可以使用了.现在我们扩展MEF,在其装配生成实例时,使用Castle Dy ...

  10. 解决win10不显示coreldraw x4/5/6菜单栏

    1.下载插件 https://pan.baidu.com/s/1nQ1kgUNSD7-9sjUbv5M6XA 复制链接下载插件 2.导入插件到工作区 3.设置工具栏显示 4.把工具栏拖动到菜单栏位置, ...