Spring Boot(1)——开发你的第一款Spring Boot应用(Edition1)
Spring Boot(1)——开发你的第一款Spring Boot应用(Edition1)
- 准备工作:
- java:java 8 或者 java 9;
- Spring框架:5.0.8.RELEASE或以上;
- Maven 3.2+ 或 Gradle 4。
- 开发步骤:
- 新建一个maven项目;
- 在pom文件中添加parent,以及spring-boot-starter-web【确保jar包都下载成功】;
<?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.example</groupId>
<artifactId>myproject</artifactId>
<version>0.0.1-SNAPSHOT</version> <parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.4.RELEASE</version>
</parent> <!-- Additional lines to be added here... -->
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies> </project> - 编写应用的代码。
import org.springframework.boot.*;
import org.springframework.boot.autoconfigure.*;
import org.springframework.web.bind.annotation.*; /**
*
* @description
* @RestController,固定类型注解,属于Spring MVC的注解。
* 1、为人们阅读代码时提供提示;
* 2、提示spring,这个类扮演着特殊的角色。
* 这里的Example就是一个web的@Controller,所以Spring处理即将到来的web请求的时候会考虑到它。
* @author
* LSH
* @date
* 2018年8月11日下午5:06:37
*
*/
@RestController
/**
*
* @description
* @EnableAutoConfiguration,让Spring Boot基于你添加的jar包依赖来判断你想怎样配置Spring。
* 这里,我们添加了spring-boot-starter-web,而它又添加了Tomcat和Spring MVC,
* 所以自动配置会认为你是在开发一个web应用,并且完成相应的Spring配置。
* @author
* LSH
* @date
* 2018年8月11日下午5:07:13
*
*/
@EnableAutoConfiguration
public class Example { /**
*
* @Desc
* @RequestMapping,提供“路由”信息,属于Spring MVC的注解。
* 它告诉Spring,任何以“/”为路径的HTTP请求都应该映射到home方法
*
*/
@RequestMapping("/")
String home() {
return "Hello World!";
} /**
*
* @Desc
* 这里的main方法,会把控制权通过调用Spring Boot的SpringApplication类的run方法委派给SpringApplication类,
* SpringApplication类启动我们的应用,启动Spring,接着启动自动配置好的Tomcat Web服务器;
* 我们需要将Examle.class作为一个参数传给run方法,来告诉SpringApplication哪一个是Spring基本组件;
* args数组也传递过去了,用来暴露任何命令行参数
* @param args
*/
public static void main(String[] args){
SpringApplication.run(Example.class, args);
} }
- 运行验证
- 直接运行Example类里的main方法;
- 在浏览器里输入,localhost:8080,回车;
- 浏览器里看到,“hello, world”字样,项目运行成功!
- 以上内容源自Spring Boot官方文档
Spring Boot(1)——开发你的第一款Spring Boot应用(Edition1)的更多相关文章
- spring boot 实战:我们的第一款开源软件
在信息爆炸时代,如何避免持续性信息过剩,使自己变得专注而不是被纷繁的信息所累?每天会看到各种各样的新闻,各种新潮的技术层出不穷,如何筛选出自己所关心的? 各位看官会想,我们是来看开源软件的,你给我扯什 ...
- Springboot 系列(六)Spring Boot web 开发之拦截器和三大组件
1. 拦截器 Springboot 中的 Interceptor 拦截器也就是 mvc 中的拦截器,只是省去了 xml 配置部分.并没有本质的不同,都是通过实现 HandlerInterceptor ...
- Spring Boot 是 Spring 的一套快速配置脚手架,可以基于Spring Boot 快速开发单个微服务
Spring Boot 是 Spring 的一套快速配置脚手架,可以基于Spring Boot 快速开发单个微服务,Spring Cloud是一个基于Spring Boot实现的云应用开发工具:Spr ...
- 【Spring注解驱动开发】如何使用@Value注解为bean的属性赋值,我们一起吊打面试官!
写在前面 在之前的文章中,我们探讨了如何向Spring的IOC容器中注册bean组件,讲解了有关bean组件的生命周期的知识.今天,我们就来一起聊聊@Value注解的用法. 项目工程源码已经提交到Gi ...
- 【Spring注解驱动开发】聊聊Spring注解驱动开发那些事儿!
写在前面 今天,面了一个工作5年的小伙伴,面试结果不理想啊!也不是我说,工作5年了,问多线程的知识:就只知道继承Thread类和实现Runnable接口!问Java集合,竟然说HashMap是线程安全 ...
- 【Spring注解驱动开发】使用@Import注解给容器中快速导入一个组件
写在前面 我们可以将一些bean组件交由Spring管理,并且Spring支持单实例bean和多实例bean.我们自己写的类,可以通过包扫描+标注注解(@Controller.@Servcie.@Re ...
- 【Spring注解驱动开发】如何使用@Bean注解指定初始化和销毁的方法?看这一篇就够了!!
写在前面 在[String注解驱动开发专题]中,前面的文章我们主要讲了有关于如何向Spring容器中注册bean的知识,大家可以到[String注解驱动开发专题]中系统学习.接下来,我们继续肝Spri ...
- 【Spring注解驱动开发】使用InitializingBean和DisposableBean来管理bean的生命周期,你真的了解吗?
写在前面 在<[Spring注解驱动开发]如何使用@Bean注解指定初始化和销毁的方法?看这一篇就够了!!>一文中,我们讲述了如何使用@Bean注解来指定bean初始化和销毁的方法.具体的 ...
- 0、Spring 注解驱动开发
0.Spring注解驱动开发 0.1 简介 <Spring注解驱动开发>是一套帮助我们深入了解Spring原理机制的教程: 现今SpringBoot.SpringCloud技术非常火热,作 ...
随机推荐
- C#多线程编程のSemaphore(信号量,负责协调各个线程)
Semaphore负责协调线程,可以限制对某一资源访问的线程数量 这里对SemaphoreSlim类的用法做一个简单的例子: namespace WpfApplication6 { /// <s ...
- Openstack安装Dashboard之后,浏览器无法打开页面 500 Internal Server Error
在手动部署Openstack时,按照官方文档安装Dashboard,并进行了配置后,发现用浏览器无法打开界面 页面显示: Internal Server Error The server encoun ...
- CentOS 7 上安装vim(默认未安装)
今天使用CentOS 7,发现未安装vim,所以重新安装 执行命令: yum -y install vim* 然后就可以使用了
- 思考与算法:大脑是cpu、思考是算法
思考与算法:大脑是cpu.思考是算法
- OLTP与OLAP的区别
OLTP和OLAP的区别 联机事务处理OLTP(on-line transaction processing) 主要是执行基本日常的事务处理,比如数据库记录的增删查改.比如在银行的一笔交易记录,就是一 ...
- 【足迹C++primer】32、定制操作_2
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/cutter_point/article/details/32301839 定制操作_2 完整的big ...
- Python:Day17 生成器、time和random模块
列表生成式: a = [x*2 for x in range(10)] #这是最简单的列表生成式,range换成其它的序列也OK a = [f(x) for x in range(10)] #将里将前 ...
- 无备份时用dbms_repair恢复坏块的方法
份的情况下可以直接使用备份来恢复. 对于通过备份恢复,Oracel为我们提供了很多种方式,冷备,基于用户管理方式,RMAN方式等等. 对于这几种方式我们需要实现基于数据库以及文件级别的恢复.RMAN同 ...
- TypeError: "x" is not a function
https://stackoverflow.com/questions/32751209/jasmine-typeerror-is-not-a-function 信息 TypeError: " ...
- express+vue+mongodb+session 实现注册登录
上个月写了一篇文章是 express+mongodb+vue 实现增删改查. 只是简单的实现了增删改查功能,那么今天是在那个基础之上做了扩展,首先实现的功能有如下: 1. 支持注册,登录功能,用户可以 ...