美文网首页
springboot 学习笔记(一)介绍与项目创建

springboot 学习笔记(一)介绍与项目创建

作者: 囝囝123 | 来源:发表于2019-07-29 14:19 被阅读0次

    Spring Boot 简介

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

    Spring boot的特点

    1. 创建独立的Spring应用程序
    2. 嵌入的Tomcat,无需部署WAR文件
    3. 简化Maven配置
    4. 自动配置Spring
    5. 提供生产就绪型功能,如指标,健康检查和外部配置
    6. 绝对没有代码生成和对XML没有要求配置

    Spring boot的优点

    spring boot 可以支持你快速的开发出 restful 风格的微服务架构
    自动化确实方便,做微服务再合适不过了,单一jar包部署和管理都非常方便。只要系统架构设计合理,大型项目也能用,加上nginx负载均衡,轻松实现横向扩展
    spring boot 要解决的问题, 精简配置是一方面, 另外一方面是如何方便的让spring生态圈和其他工具链整合(比如redis, email, elasticsearch)

    一、SpringBoot 项目创建

    1.官网创建

    Spring Boot项目可以在官网上进行创建,将自己需要的勾选即可
    网址:http://start.spring.io
    网站示例:

    1-1.jpg
    2.利用IDE 创建

    1.各种IDE 都有SpringBoot项目创建的插件 利用IDE 就可以创建
    示例为STS


    1-2.jpg
    3. Spring Boot 项目 目录结构
    1-3.png
    • src/main/java:主程序入口 SpringbootdemoApplication,可以通过直接运行该类来 启动 Spring Boot应用
    • src/main/resources:配置目录,该目录用来存放应用的一些配置信息,比如应用名、服务端口、数据库配置等。由于我们应用了Web模块,因此产生了 static目录与
      templates目录,前者用于存放静态资源,如图片、CSS、JavaScript等;后者用于存放Web页面的模板文件。
    • src/test:单元测试目录,生成的 SpringbootdemoApplicationTests 通过 JUnit4实现,可以直接用运行 Spring Boot应用的测试。
    4. 运行SpringBoot项目
    • 可以直接运行XXXXapplication.java 文件中的 main 方法
    • 进入 cmd 环境中,切换到项目路径中,然后输入 mvn spring-boot:run 回车,项目就可以启动了
    • 可以利用Maven 来进行醒目的启动 选中项目-->右击-->Run as 选择 Maven build --> Goals填写 : spring-boot:run

    总结笔记

    • 第一次创建项目的时候 运行的时候回报错:
      Unregistering JMX-exposed beans on shutdown


      1-4.png

      这是在创建SpringBoot项目的时候没有勾选web 选项.
      在pom 文件中引入即可,就是引入一个内部的嵌入的tomcat

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

    5. SpringBoot 启动类
    package com.liu.demo;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    /**
     * @SpringBootApplication 开启了Spring的组件扫描和Spring Boot的自动配置功能。实际
     * 上, @SpringBootApplication 将三个有用的注解组合在了一起。
     * Spring的 @Configuration :标明该类使用Spring基于Java的配置。
     * Spring的 @ComponentScan :启用组件扫描,这样你写的Web控制器类和其他组件才能被
     * 自动发现并注册为Spring应用程序上下文里的Bean。
     * Spring Boot 的 @EnableAutoConfiguration : 这 个 不 起 眼 的 小 注 解 也 可 以 称 为 @Abracadabra
     * 就是这一行配置开启了Spring Boot自动配置的魔力,让你不用再写成
     * 篇的配置了。
     * @author liu.leiming
     *
     */
    @SpringBootApplication // 开启组件扫描和自动配置 项目使用该注解 就可以令其启动
    public class Demo2Application {
    
        public static void main(String[] args) {
            SpringApplication.run(Demo2Application.class, args);//负责启动引导应用程序
        }
    }
    
    6.配置应用

    SpringBoot 不需要设置加载application.properties ,只要他存在就可以自动加载,配置文件格式比较简单,如设置端口,只要在配置文件写上即可: server.port=8000

    7.用Maven进行项目构建
    • 创建一个 maven 项目


      1-5.png
    • 引入起步依赖
      在pom.xml 文件中 加入SpringBoot 项目的起步依赖
        <!-- 从 spring-boot-starter-parent继承版本号  这样一来就能利用Maven的依赖管理功能,
        继承很多常用库的依赖版本,在你声明依赖时就不用再去指定版本号了。
        请注意,这个pom.xml里的 <dependency> 都没有指定版本。这样就不用去考虑版本的兼容性问题了-->
         <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>2.0.4.RELEASE</version>
            <relativePath/> <!-- lookup parent from repository -->
        </parent>
    
        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
            <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
            <java.version>1.8</java.version>
        </properties>
    
        <dependencies>
        <!-- 起步依赖 -->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
            </dependency>
        </dependencies>
    
        <build>
            <plugins>
                <plugin><!-- 运用Spring Boot 插件 -->
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                </plugin>
            </plugins>
        </build>
    

    Spring Boot通过提供众多起步依赖降低项目依赖的复杂度。起步依赖本质上是一个Maven项目对象模型(Project Object Model,POM),定义了对其他库的传递依赖,这些东西加在一起即支持某项功能。很多起步依赖的命名都暗示了它们提供的某种或某类功能。
    举例来说,你打算把这个阅读列表应用程序做成一个Web应用程序。与其向项目的构建文件里添加一堆单独的库依赖,还不如声明这是一个Web应用程序来得简单。你只要添加Spring Boot的Web起步依赖就好了。

    • 添加启动类与配置文件
    • 进行项目启动

    完美运行.

    相关文章

      网友评论

          本文标题:springboot 学习笔记(一)介绍与项目创建

          本文链接:https://www.haomeiwen.com/subject/kmykiftx.html