Spring Boot 揭秘与实战(一) 快速上手

计划开个专栏,讲解《Spring Boot 揭秘与实战》系列。
原文地址:Spring Boot 揭秘与实战(一) 快速上手
博客地址:blog.720ui.com/javascript

简介

什么是Spring Boot

Spring Boot其设计目的是用来简化 Spring 应用的初始搭建以及开发过程。Spring Boot 的目标不在于为已解决的问题域提供新的解决方案,而是为平台带来另外一种开发体验,从而简化对这些已有技术的使用。Spring Boot 充分利用了 JavaConfig 的配置模式以及“约定优于配置”的理念,可以极大的简化基于 Spring MVC 的 Web 应用和 REST 服务开发。对于已经熟悉 Spring 生态系统的开发人员来讲,Spring Boot 是一个很理想的选择。java

为何选择Spring Boot

  • Spring Boot 使编码变简单
  • Spring Boot 使配置变简单
  • Spring Boot 使部署变简单
  • Spring Boot 使监控变简单

相关知识

Spring Boot的spring-boot-starter

Spring Boot提供了不少”开箱即用“的依赖模块,都是以spring-boot-starter-xx做为命名的。下面列举一些经常使用的模块。git

  • spring-boot-starter-logging :使用 Spring Boot 默认的日志框架 Logback。
  • spring-boot-starter-log4j :添加 Log4j 的支持。
  • spring-boot-starter-web :支持 Web 应用开发,包含 Tomcat 和 spring-mvc。
  • spring-boot-starter-tomcat :使用 Spring Boot 默认的 Tomcat 做为应用服务器。
  • spring-boot-starter-jetty :使用 Jetty 而不是默认的 Tomcat 做为应用服务器。
  • spring-boot-starter-test :包含经常使用的测试所需的依赖,如 JUnit、Hamcrest、Mockito 和 spring-test 等。
  • spring-boot-starter-aop :包含 spring-aop 和 AspectJ 来支持面向切面编程(AOP)。
  • spring-boot-starter-security :包含 spring-security。
  • spring-boot-starter-jdbc :支持使用 JDBC 访问数据库。
  • spring-boot-starter-redis :支持使用 Redis。
  • spring-boot-starter-data-mongodb :包含 spring-data-mongodb 来支持 MongoDB。
  • spring-boot-starter-data-jpa :包含 spring-data-jpa、spring-orm 和 Hibernate 来支持 JPA。
  • spring-boot-starter-amqp :经过 spring-rabbit 支持 AMQP。
  • spring-boot-starter-actuator : 添加适用于生产环境的功能,如性能指标和监测等功能。

Java Config 自动配置

Spring Boot 推荐采用基于 Java Config 的配置方式,而不是传统的 XML。例如,@Configuration、@Bean、@EnableAutoConfiguration、@CompomentScan、@PropertySource、@Repository、@Service、@RestController等。github

快速上手

Spring Boot初体验

经过 Spring Boot,建立新的 Spring 应用变得很是容易,只须要简单的几个步骤就能够建立出一个应用。
首先,咱们先建立一个 POM 文件。web

<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>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-parent</artifactId>
          <version>1.3.3.RELEASE</version>
     </parent>
    <groupId>com.lianggzone.demo</groupId>
    <artifactId>springboot-action</artifactId>
    <version>0.1</version>
    <packaging>war</packaging>
    <name>springboot-action</name>
    <dependencies>
        <dependency>
              <groupId>org.springframework.boot</groupId>
              <artifactId>spring-boot-starter</artifactId>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
              </plugin>
        </plugins>
    </build>
</project>复制代码

而后,第二步,建立 Java 代码。redis

@SpringBootApplication
public class ApplicationDemo {

    public static void main(String[] args) throws Exception {
        System.out.println(" springApplication run !");
        SpringApplication.run(ApplicationDemo.class, args);
    }
}复制代码

快速搭建web工程

经过 Spring Boot,建立 web 工程也很是简单。
修改 POM 文件,添加依赖。spring

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>复制代码

建立Java代码mongodb

@RestController
@EnableAutoConfiguration
public class RestfulApiWebDemo {
    @RequestMapping("/")
    String home() {
        return "Hello World!";
    }
    public static void main(String[] args) throws Exception {
        SpringApplication.run(RestfulApiWebDemo.class, args);
    }
}复制代码

直接运行 Java 类,或者能够经过“mvn spring-boot:run”在命令行启动该应用。会启动一个内嵌的 Tomcat 服务器运行在 8080 端口。访问 http://localhost:8080 能够看到页面上显示“Hello World!”。
此外,在 POM 文件添加插件。数据库

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
</plugin>复制代码

在添加了插件后,当运行“mvn package”进行打包时,会打包成一个能够直接运行的 JAR 文件,使用“java -jar”命令就能够直接运行。apache

源代码

相关示例完整代码: springboot-action

(完)

更多精彩文章,尽在「服务端思惟」微信公众号!

相关文章
相关标签/搜索