程序员Java学习笔记Spring Boot

使用Spring boot快速搭建简洁高效的web应用(一)

2016-08-13  本文已影响4192人  ZacharyWang

Spring的繁琐的配置简直是每个项目开始的时候都会吐槽的地方,特别是对于较为小型的项目,或者是个人项目,过于繁琐的配置就更显得多余了。Spring boot是Spring推出的一个轻量化web框架,主要解决了Spring对于小型项目饱受诟病的配置和开发速度问题。

来自Spring官网对Spring boot的介绍:

Takes an opinionated view of building production-ready Spring applications. Spring Boot favors convention over configuration and is designed to get you up and running as quickly as possible.

大概意思就是Spring boot是一个简化了配置的Spring,专门为快速开发而设计。

一、入门示例程序

1、添加pom依赖

 <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.2.3.RELEASE</version>
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>


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


2、编写控制器和启动程序

1. 控制器和SpringMVC中一样,通过添加注解的方式配置。代码如下:

package control;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * Created by zachary on 16/8/8.
 */
@RestController  //声明为控制器
@EnableAutoConfiguration //自动配置
public class Control {
    @RequestMapping("/") //请求路径,和Spring一样
    public String Hello(){
        return "Hello Spring boot!";
    }
    @RequestMapping("/user/{username}") //带参数的请求路径
    public String User(@PathVariable String username){
        return "Hello "+username;
    }
}

2. 启动程序作为程序入口,包含一个主方法,因为Spring boot 自带容器(默认为tomcat),所以直接运行这个主方法就可以在浏览器中直接访问程序,当然,还需要添加相应注解使上面配置好的控制器可以被自动扫描添加。

这里有个坑:启动程序必须包含在一个包中,如果直接放在/src/main/java中,自动扫描其它控制器会失效,具体原因等查到了会写上来

package control;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;

@Configuration //相当于传统的xml配置文
@ComponentScan //表示将该类自动发现(扫描)并注册为Bean,可以自动收集所有的Spring组件,包括@Configuration类。我们经常使用@ComponentScan注解搜索beans,并结合@Autowired注解导入。
@EnableAutoConfiguration

public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}

二、注解详解

Spring boot 中常用的注解如下:

三、部署到tomcat

由此看来,Spring boot确实大大简化了以往的Spring开发,个人认为今后在小型系统中,使用Spring boot毫无疑问。
因为Spring boot自带容器,所以开发完成后将项目部署到tomcat中还需要几步简单的操作:我将在近期更新。

上一篇下一篇

猜你喜欢

热点阅读