SpringBoot入门

一、什么是Spring Boot

Spring Boot是由Pivotal团队提供的全新框架,设计目的是用来简化新Spring应用的初始搭建以及开发过程。Spring Boot使用“习惯由于配置”的理念让项目快速运行起来,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。

由此可见

1)Spring Boot是在Spring基础之上的,因此SpringBoot依赖于Spring框架

2)Spring Boot不需要再使用大量的xml配置文件,但是他还是支持xml配置文件的

3)Spring Boot能够快速运行起来,是因为他集成了tomcat、jetty以及undertow,这样我们就无需以war包形式部署项目

二、 Spring Boot有哪些核心功能

2.1 独立运行的Spring项目,可以通过jar包形式直接运行

2.2 内嵌Servlet容器,集成了tomcat、jetty以及undertow

2.3 自动配置Spring

2.4 提供starter简化maven配置

2.5 准生产的应用监控

2.6 无需代码生成和xml配置

三、 Spring Boot的优缺点

3.1 优点

1)快速构建项目

2)对主流框架的无配置集成

3)项目可独立运行,无须依赖Servlet容器

4)提供运行时应用监控

5)极大地提高了开发、部署效率

6)与云计算的天然集成

3.2 缺点

1)文档少, 会使用的人也少

2)依赖于spring框架,如果不喜欢Spring,那么Spring boot就不要看了

 四、构建一个简单的Spring Boot项目

4.1 创建项目

创建一个标准的maven的基本项目,类型为jar包项目,然后在pom文件中添加相关的依赖,内容如下:

<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>
	<parent>
		<groupId>com.itbuilder</groupId>
		<artifactId>poab</artifactId>
		<version>0.0.1-SNAPSHOT</version>
	</parent>
	<artifactId>web</artifactId>
	<properties>
		<spring-boot.version>1.5.4.RELEASE</spring-boot.version>
		<thymeleaf.version>3.0.6.RELEASE</thymeleaf.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter</artifactId>
			<version>${spring-boot.version}</version>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-thymeleaf</artifactId>
			<version>${spring-boot.version}</version>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
			<version>${spring-boot.version}</version>
		</dependency>

	</dependencies>



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

</project>
 2、创建Controller类

Spring Boot的基本类关键位@Controller 和 @RestController 注解,通过其标记的类均识别为Controller。其中@RestController标记的类,如果返回对象为JavaBean 则会自动转换为json对象。源码如下:

package com.itbuilder.poab.web.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.itbuilder.poab.service.HelloService;

@RestController
@RequestMapping("/hello")
public class HelloBootController {

	@Autowired
	private HelloService helloService;
	
	
	
	@RequestMapping("/{name}")
	public String hello(@PathVariable String name) {
	    System.out.println(helloService.say());
		return helloService.say() ;
	}
	
}
 

3、编写main方法启动项目

package com.itbuilder.poab.web.boot;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;

@SpringBootApplication
@ComponentScan(basePackages="com.itbuilder.poab.web.controller")
public class PoabStarter {

	public static void main(String[] args) {
	    
	    SpringApplication.run(PoabStarter.class, args);
//		SpringApplication app = new SpringApplication(PoabStarter.class);
//		app.run(args);
	}
}
 

注:

@ComponentScan 注解是用于设置SpringApplication类启动时查找Controller的包路径。

相关推荐