【Spring Boot学习之一】Spring Boot简介
环境
Java1.8
Spring Boot 1.3.2
一、Spring Boot特点
1、使用java运行项目,内置tomcat,无需外部容器;
2、减少XML配置,使用properties文件和注解;
3、Spring Boot对各个Spring技术进行了封装,并不是产生新技术,方便使用了Spring;
趋势:面向服务架构(SOA)转向微服务架构,
4、Spring Cloud基于Spring Boot,Spring Cloud(HTTP+rest),基于Spring Boot中WEB组件(Spring MVC);
二、入门项目
1、搭建
new-->maven project



2、依赖
利用Maven继承依赖的特性,向上层级引入Spring Boot的其他依赖包。
(1)spring-boot-starter-parent作用
在pom.xml中引入spring-boot-start-parent,spring官方的解释叫什么stater poms,它可以提供dependency management,也就是说依赖管理,引入以后在申明其它dependency的时候就不需要version了,后面可以看到。
(2)spring-boot-starter-web作用
SpringWEB核心组件(springMVC + Spring)
(3)spring-boot-maven-plugin作用
如果我们要直接Main启动spring,那么以下plugin必须要添加,否则是无法启动的。如果使用maven 的spring-boot:run的话是不需要此配置的。(我在测试的时候,如果不配置下面的plugin也是直接在Main中运行的。)
3、编写HelloWord服务
package com.wjy.controller; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; @EnableAutoConfiguration
@RestController
public class HelloController { @RequestMapping("/hello")
public String hello() {
return "hello world";
} public static void main(String[] args) {
SpringApplication.run(HelloController.class, args);
} }
(1)@RestController
在上加上RestController 表示修饰该Controller所有的方法返回JSON格式,直接可以编写Restful接口 相当于@Controller+@ResponseBody
(2)@EnableAutoConfiguration
作用在于让Spring Boot根据应用所声明的依赖来对Spring框架进行自动配置:
这个注解告诉Spring Boot根据添加的jar依赖猜测你想如何配置Spring。由于spring-boot-starter-web添加了Tomcat和Spring MVC,所以auto-configuration将假定你正在开发一个web应用并相应地对Spring进行设置。
(3)SpringApplication.run(HelloController.class, args) 标识为启动类
(4)@ResponseBody 用在方法上将返回内容转换成json格式
(5)@SpringBootApplication = (默认属性)@Configuration + @EnableAutoConfiguration + @ComponentScan。
作用:启动项目 整合常用注解 扫包作用(扫描当前同级包及其子包)
@ComponentScan默认情况下:它扫描所有类型(@Service,@Repository,@Component,@Controller),并且扫描范围是@ComponentScan注解所在配置类包及子包的类
4、启动
默认端口8080
(1)启动方式一 启动单个controller
package com.wjy.controller; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; @EnableAutoConfiguration
@RestController
public class HelloController { @RequestMapping("/hello")
public String hello() {
return "hello world";
} public static void main(String[] args) {
SpringApplication.run(HelloController.class, args);
} }
(2)启动方式二 扫包启动一片controller
package com.wjy.base; import org.springframework.boot.SpringApplication;
import org.springframework.context.annotation.ComponentScan; @ComponentScan(basePackages="com.wjy.controller")
public class App { public static void main(String[] args) {
SpringApplication.run(App.class, args);
} }
浏览器访问验证:

【Spring Boot学习之一】Spring Boot简介的更多相关文章
- Spring Cloud 学习 之 Spring Cloud Eureka(源码分析)
Spring Cloud 学习 之 Spring Cloud Eureka(源码分析) Spring Boot版本:2.1.4.RELEASE Spring Cloud版本:Greenwich.SR1 ...
- Spring Cloud 学习 之 Spring Cloud Eureka(搭建)
Spring Boot版本:2.1.4.RELEASE Spring Cloud版本:Greenwich.SR1 文章目录 搭建服务注册中心: 注册服务提供者: 高可用注册中心: 搭建服务注册中心: ...
- Spring Cloud学习笔记--Spring Boot初次搭建
1. Spring Boot简介 初次接触Spring的时候,我感觉这是一个很难接触的框架,因为其庞杂的配置文件,我最不喜欢的就是xml文件,这种文件的可读性很不好.所以很久以来我的Spring学习都 ...
- Spring Boot学习笔记——Spring Boot与MyBatis的集成(项目示例)
1.准备数据库环境 # 创建数据库 CREATE DATABASE IF NOT EXISTS zifeiydb DEFAULT CHARSET utf8 COLLATE utf8_general_c ...
- spring cloud学习(六)Spring Cloud Config
Spring Cloud Config 参考个人项目 参考个人项目 : (希望大家能给个star~) https://github.com/FunriLy/springcloud-study/tree ...
- Spring 框架学习(1)--Spring、Spring MVC扫盲
纸上得来终觉浅,绝知此事要躬行 文章大纲 什么是spring 传统Java web应用架构 更强的Java Web应用架构--MVC框架 Spring--粘合式框架 spring的内涵 spring核 ...
- Spring Cloud 学习 (九) Spring Security, OAuth2
Spring Security Spring Security 是 Spring Resource 社区的一个安全组件.在安全方面,有两个主要的领域,一是"认证",即你是谁:二是& ...
- Spring框架学习03——Spring Bean 的详解
1.Bean 的配置 Spring可以看做一个大型工厂,用于生产和管理Spring容器中的Bean,Spring框架支持XML和Properties两种格式的配置文件,在实际开发中常用XML格式的配置 ...
- Spring框架学习02——Spring IOC 详解
1.Spring IOC的基本概念 IOC(Inverse of Control)反转控制的概念,就是将原本在程序中手动创建对象的控制权,交由Spring框架管理.当某个Java对象(调用者)需要调用 ...
- Spring Boot学习笔记---Spring Boot 基础及使用idea搭建项目
最近一段时间一直在学习Spring Boot,刚进的一家公司也正好有用到这个技术.虽然一直在学习,但是还没有好好的总结,今天周末先简单总结一下基础知识,等有时间再慢慢学习总结吧. Spring Boo ...
随机推荐
- Spring Boot 集成 Kafka
相关文章 网址 Spring Boot系列文章(一):SpringBoot Kafka 整合使用 http://www.54tianzhisheng.cn/2018/01/05/SpringBoot- ...
- 33、安装MySQL
一.Windows安装MySQL 1.下载 打开网址,页面如下,确认好要下载的操作系统,点击Download. 可以不用登陆或者注册,直接点击No thanks,just start my downl ...
- spark调优——数据倾斜
Spark中的数据倾斜问题主要指shuffle过程中出现的数据倾斜问题,是由于不同的key对应的数据量不同导致的不同task所处理的数据量不同的问题. 例如,reduce点一共要处理100万条数据,第 ...
- MANIFEST.MF文件对Import-Package/Export-Package重排列
众所周知,MANIFEST.MF文件中的空格开头的行是相当于拼接在上一行末尾的.很多又长又乱的Import-Package或者Export-Package,有时候想要搜索某个package却可能被换行 ...
- oc语言的特征
类型结构+运行时 内存管理:引用计数与析构 并发:gcd 函数式:block
- maven 查看依赖树结构命令mvn dependency:tree
使用maven 管理项目的依赖,可以使用如下命令查看依赖树结构: mvn dependency:tree 如下图是使用idea的终端执行命令的局部图: 也可以使用如下命令将输出定向到某个文件,这样就可 ...
- [Inside HotSpot] Xcode编译调试OpenJDK12
编译 下载brew然后安装hg,freetype,ccache $ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent. ...
- OpenCV 学习笔记(0)两幅图像标定配准
参考教程 依赖opencv扩展库,使用sifi匹配 保存配准信息 "./config/calibratedPara.yaml" #include <iostream> ...
- Java验证jwt token
https://jwt.io/ RS256加密JWT生成.验证 https://blog.csdn.net/u011411069/article/details/79966226 How to loa ...
- 如果设置Redis客户端的超时时长?
客户端的超时时长分连接超时和读写超时,如果是基于hiredis的实现,则读写超时是合在一起的,同一参数控制. 在hiredis中,读写超时调用函数redisSetTimeout设置,可以看到没有区分读 ...