中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

SpringBoot | 第一章:第一個 SpringBoot 應用

2018-07-28    來源:importnew

容器云強勢上線!快速搭建集群,上萬Linux鏡像隨意使用

springboot簡單介紹

概述

隨著動態(tài)語言的流行(Ruby、Groovy、Scala、Node.js),Java的開發(fā)顯得格外的笨重:繁多的配置、低下的開發(fā)效率、復雜的部署流程以及第三方技術(shù)集成難度大。
在上述環(huán)境下,Springboot應運而生。它使用”習慣優(yōu)于配置”(項目中存在大量的配置,此外還內(nèi)置一個習慣性的配置,讓你無須手動進行配置)的理念讓你的項目快速運行起來。使用springboot很容易創(chuàng)建一個獨立運行(運行jar,內(nèi)嵌servlet容器)、準生產(chǎn)級別的基于Spring框架的項目,使用springboot你可以不用或者只需要很少的Spring配置。


Spring Boot 的核心功能

  • 獨立運行的Spring項目

Spring Boot可以以jar包的形式獨立運行,運行一個Spring Boot項目只需要通過java -jar xx.jar。

  • 內(nèi)置Servlet容器

Spring Boot可選擇內(nèi)嵌Tomcat、Jetty或者Undertow,這樣無須以war包形式部署。

  • 提供starter簡化maven配置

Spring提供了一系列的starter pom來簡化maven依賴加載,例如:當你使用了spring-boot-starter-web時,會自動加入相關(guān)依賴,無需你手動一個一個的添加坐標依賴。

  • 自動配置Spring

Spring Boot會根據(jù)在類路徑中的jar包、類,為jar包里的類自動配置Bean,這樣會極大地減少我們要使用的配置。當然,Spring Boot只是考慮了大多數(shù)的開發(fā)場景,并不是所有場景,若在實際開發(fā)中,我們需要自動配置bean,而Spring Boot沒有提供支持,則可以自定義自動配置。

  • 無代碼生成和xml配置

Spring Boot的神奇的不是借助于代碼生成來實現(xiàn)的,而是通過條件注解來實現(xiàn)的,這是Spring 4.x提供的新特性,Spring 4.x提倡使用java配置和注解配置相結(jié)合,而Spring Boot不需要任何xml配置即可實現(xiàn)Sping Boot的所有配置。

優(yōu)缺點

優(yōu)點

  1. 快速構(gòu)建項目:省略了繁瑣且重復的xml配置,分分鐘構(gòu)建一個web工程;
  2. 對主流開發(fā)框架的無配置集成:提供了很多Starter 依賴包,開箱即用,無需多余配置;
  3. 項目可獨立運行:無需外部依賴Servlet容器;
  4. 極大地提供了開發(fā)、部署效率;
  5. 監(jiān)控簡單:提供了actuator包,可以使用它來對你的應用進行監(jiān)控。

缺點

  1. 依賴太多:一個簡單的SpringBoot應用都有好幾十M只有;
  2. 缺少監(jiān)控集成方案、安全管理方案:只提供基礎(chǔ)監(jiān)控,要實現(xiàn)生產(chǎn)級別的監(jiān)控,監(jiān)控方案需要自己動手解決;(后期講解soringCloud時,會結(jié)合pinpoint和skywalking分布式鏈路工具進行應用監(jiān)控)

工程搭建

使用的工具為:Spring Tool Suite(3.9.3.RELEASE)?SpringBoot:1.5.14.RELEASE

Spring Tool Suite 下載地址:https://spring.io/tools/sts/all

創(chuàng)建項目

利用**Spring Initializr**進行快速創(chuàng)建項目

  • 選擇Dashboard–>CREATE SPRING STARTER PROJECT進行創(chuàng)建項目,或者可以選擇file–>new–>Spring Starter Project,打開創(chuàng)建面板

第一種方式:

第二種方式:

  • 出現(xiàn)創(chuàng)建面板,填寫項目信息

這里url建議直接填寫:https://start.spring.io(默認是http方式)

maven相關(guān)命名說明

  1. Group:一般為逆向域名格式,如本博客域名為lqdev.cn,則group一般以cn.lqdev開頭
  2. Artifact:唯一標識,一般為項目名稱。?具體maven相關(guān)信息,可自行搜索,這里只簡單闡述
  • 選擇依賴包和版本

除此下載包時,可能會比較慢,建議替換成阿里云的maven鏡像

項目結(jié)構(gòu)

- src
    -main
        -java
            -cn.lqdev.learning.springboot.chapter1
                #主函數(shù),啟動類,運行它如果運行了 Tomcat、Jetty、Undertow 等容器
                -Chapter1Application    
        -resouces
            #存放靜態(tài)資源 js/css/images 等
            - statics
            #存放 html 模板文件
            - templates
            #主要的配置文件,SpringBoot啟動時候會自動加載application.properties/bootstrap.properties        
            - application.properties
    #測試文件存放目錄        
    -test
 # pom.xml 文件是Maven構(gòu)建的基礎(chǔ),里面包含了我們所依賴JAR和Plugin的信息
- pom

pom依賴

由于使用了Spring Initializr直接創(chuàng)建項目,相關(guān)依賴自動添加好了。

<?xml version="1.0" encoding="UTF-8"?>
<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>
 
    <groupId>cn.lqdev.learning</groupId>
    <artifactId>springboot-chapter1</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>chapter-1</name>
    <description>Spring Boot | 第一章:第一個Springboot應用</description>

    <!-- Springboot的版本,大家選擇時,應該選擇 RELEASE 版本 -->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.14.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>
        <!-- 內(nèi)嵌了tomcat服務(wù)器,開發(fā)簡單的web應用,此依賴即可  -->
         <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>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

主入口

/**
 *  啟動類
 * @author oKong 
 *
 */
@SpringBootApplication
public class Chapter1Application {

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

編寫controller

/**
 * 第一個springboot應用 
 * @author oKong
 *
 */
//@RestController = @Controller + @ResponseBody 默認直接返回json
@RestController
public class DemoController {

    @RequestMapping(value = "/demo", method = RequestMethod.GET)
    public String demo() {
        return "hello,SpringBoot!";
    }
}

啟動應用

直接Chapter1Application,右鍵?run as?–>?Spring Boot App?即可。

看見以下提示,說明啟動成功:

2018-07-11 22:47:38.170  INFO 15396 --- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)

簡單說明

  1. springboot 默認的端口號為:8080,此時瀏覽器訪問:127.0.0.1:8080/demo即可查看。
  2. 需要修改默認端口號時及上下文路徑時,只需要在application.properties設(shè)置以下屬性:
# 端口號
server.port=8888
# 應用上下文路徑
server.context-path=/chapter1

訪問:http://127.0.0.1:8888/chapter1/demo

自此,一個簡單的SpringBoot就開發(fā)完成了。比起原來的springmvc時的開發(fā)效率,簡直是一個質(zhì)的飛躍,無需再煩擾煩人的xml配置文件了。終于可以快樂的擼代碼了~

總結(jié)

目前互聯(lián)網(wǎng)上很多大佬都有springboot系列教程,如有雷同,請多多包涵了。本文是作者在電腦前一字一句敲的,每一步都是親身實際過的。若文中有所錯誤之處,還望提出,謝謝。

標簽: 安全 代碼 服務(wù)器 互聯(lián)網(wǎng) 搜索 域名

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請與原作者聯(lián)系。

上一篇:SpringBoot | 第二章:lombok 介紹及簡單使用

下一篇:SpringBoot | 第零章:前言