欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Spring Boot快速搭建Spring框架教程

 更新時(shí)間:2017年10月17日 11:21:38   作者:路人甲  
這篇文章主要為大家詳細(xì)介紹了Spring Boot快速搭建Spring框架教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

       Spring是一個(gè)開(kāi)源框架,Spring是于2003 年興起的一個(gè)輕量級(jí)的Java 開(kāi)發(fā)框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中闡述的部分理念和原型衍生而來(lái)。

        它是為了解決企業(yè)應(yīng)用開(kāi)發(fā)的復(fù)雜性而創(chuàng)建的??蚣艿闹饕獌?yōu)勢(shì)之一就是其分層架構(gòu),分層架構(gòu)允許使用者選擇使用哪一個(gè)組件,同時(shí)為 J2EE 應(yīng)用程序開(kāi)發(fā)提供集成的框架。Spring使用基本的JavaBean來(lái)完成以前只可能由EJB完成的事情。

        然而,Spring的用途不僅限于服務(wù)器端的開(kāi)發(fā)。從簡(jiǎn)單性、可測(cè)試性和松耦合的角度而言,任何Java應(yīng)用都可以從Spring中受益。Spring的核心是控制反轉(zhuǎn)(IoC)和面向切面(AOP)。簡(jiǎn)單來(lái)說(shuō),Spring是一個(gè)分層的JavaSE/EEfull-stack(一站式) 輕量級(jí)開(kāi)源框架。

        Spring Boot 是 Spring 框架的一個(gè)新的子項(xiàng)目,用于創(chuàng)建 Spring 4.0 項(xiàng)目。它的開(kāi)發(fā)始于 2013 年。2014 年 4 月發(fā)布 1.0.0 版本。它可以自動(dòng)配置 Spring 的各種組件,并不依賴(lài)代碼生成和 XML 配置文件。Spring Boot 也提供了對(duì)于常見(jiàn)場(chǎng)景的推薦組件配置。Spring Boot 可以大大提升使用 Spring 框架時(shí)的開(kāi)發(fā)效率。下面本文將對(duì) Spring Boot 進(jìn)行詳細(xì)的介紹。

Spring Boot 包含的特性如下:

1、創(chuàng)建可以獨(dú)立運(yùn)行的 Spring 應(yīng)用。
2、直接嵌入 Tomcat 或 Jetty 服務(wù)器,不需要部署 WAR 文件。
3、提供推薦的基礎(chǔ) POM 文件來(lái)簡(jiǎn)化 Apache Maven 配置。
4、盡可能的根據(jù)項(xiàng)目依賴(lài)來(lái)自動(dòng)配置 Spring 框架。
5、提供可以直接在生產(chǎn)環(huán)境中使用的功能,如性能指標(biāo)、應(yīng)用信息和應(yīng)用健康檢查。
6、沒(méi)有代碼生成,也沒(méi)有 XML 配置文件。

新建Maven功能,將下面代碼直接復(fù)制到pom.xml中:

<?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>com.example</groupId> 
<artifactId>SpringBootSimple</artifactId> 
<version>1.0-SNAPSHOT</version> 

<properties>
 <spring.boot.version>1.1.4.RELEASE</spring.boot.version> 
</properties> 

<dependencies> 
 <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> 
  <version>${spring.boot.version}</version> 
  <executions> 
  <execution> 
   <goals> 
   <goal>repackage</goal> 
   </goals> 
  </execution> 
  </executions> 
 </plugin> 
</plugins> 
</build> 
</project>

        從上面pom.xml文件中可以看到應(yīng)用所聲明的依賴(lài)很少,只有一個(gè)“org.springframework.boot:spring-boot-starter-web”,而不是像其他 Spring 項(xiàng)目一樣需要聲明很多的依賴(lài)。
        當(dāng)使用 Maven 命令“mvn dependency:tree”來(lái)查看項(xiàng)目實(shí)際的依賴(lài)時(shí),會(huì)發(fā)現(xiàn)其中包含了 Spring MVC 框架、SLF4J、Jackson、Hibernate Validator 和 Tomcat 等依賴(lài)。這實(shí)際上 Spring 推薦的 Web 應(yīng)用中使用的開(kāi)源庫(kù)的組合。

調(diào)用Spring Boot應(yīng)用Java代碼,具體如下:

import org.springframework.boot.SpringApplication; 
import org.springframework.boot.autoconfigure.EnableAutoConfiguration; 
import org.springframework.web.bind.annotation.RequestMapping; 
import org.springframework.web.bind.annotation.RestController; 
 
@RestController 
@EnableAutoConfiguration 
public class Application { 
  @RequestMapping("/")
  String index() {
    return "www.yoodb.com"; 
  }   
  public static void main(String[] args) throws Exception {
     SpringApplication.run(Application.class, args);
  } 
 }

        Application.java類(lèi)是一個(gè)簡(jiǎn)單的可以獨(dú)立運(yùn)行的 Web 應(yīng)用。直接運(yùn)行該 Java 類(lèi)會(huì)啟動(dòng)一個(gè)內(nèi)嵌的 Tomcat 服務(wù)器運(yùn)行在 8080 端口。訪(fǎng)問(wèn)“http://localhost:8080”可以看到頁(yè)面上顯示“www.yoodb.com”.只需要簡(jiǎn)單的2個(gè)文件就可以啟動(dòng)一個(gè)獨(dú)立運(yùn)行的 Web 應(yīng)用。并不需要額外安裝 Tomcat類(lèi)似的應(yīng)用服務(wù)器,也不需要打包成WAR文件。可以通過(guò)“mvn spring-boot:run”在命令行啟動(dòng)該應(yīng)用。

        在pom.xml文件中添加了“org.springframework.boot:spring-boot-maven-plugin”插件。在添加了該插件之后,當(dāng)運(yùn)行“mvn package”進(jìn)行打包時(shí),會(huì)打包成一個(gè)可以直接運(yùn)行的 JAR 文件,使用“java -jar”命令就可以直接運(yùn)行。很大程度上簡(jiǎn)化了應(yīng)用的部署,只需要安裝了 JRE 就可以運(yùn)行。

      "@EnableAutoConfiguration”注解的作用在于讓 Spring Boot 根據(jù)應(yīng)用所聲明的依賴(lài)來(lái)對(duì)Spring框架進(jìn)行自動(dòng)配置,減少了開(kāi)發(fā)人員的工作量。注解“@RestController”"@RequestMapping”由Spring MVC 提供,用來(lái)創(chuàng)建REST服務(wù)。這兩個(gè)注解和 Spring Boot 本身并沒(méi)有關(guān)系的。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringBoot實(shí)現(xiàn)多端口監(jiān)聽(tīng)的代碼示例

    SpringBoot實(shí)現(xiàn)多端口監(jiān)聽(tīng)的代碼示例

    當(dāng)你需要在同一個(gè)Spring Boot應(yīng)用中,通過(guò)不同的端口來(lái)提供不同的服務(wù)或功能時(shí),就需要實(shí)現(xiàn)多端口監(jiān)聽(tīng),所以本文給大家介紹了SpringBoot實(shí)現(xiàn)多端口監(jiān)聽(tīng)的方法示例,并有相關(guān)的代碼示例供大家參考,需要的朋友可以參考下
    2024-09-09
  • 有關(guān)于整體刷新和局部刷新frameset窗口

    有關(guān)于整體刷新和局部刷新frameset窗口

    本篇小編為大家介紹有關(guān)于整體刷新和局部刷新frameset窗口的方法,希望對(duì)有需要的朋友有所幫助。
    2013-04-04
  • Java NIO異步文件通道原理及用法解析

    Java NIO異步文件通道原理及用法解析

    這篇文章主要介紹了Java NIO異步文件通道原理及用法解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • Java 8 動(dòng)態(tài)類(lèi)型語(yǔ)言L(fǎng)ambda表達(dá)式實(shí)現(xiàn)原理解析

    Java 8 動(dòng)態(tài)類(lèi)型語(yǔ)言L(fǎng)ambda表達(dá)式實(shí)現(xiàn)原理解析

    Java 8支持動(dòng)態(tài)語(yǔ)言,看到了很酷的Lambda表達(dá)式,對(duì)一直以靜態(tài)類(lèi)型語(yǔ)言自居的Java,讓人看到了Java虛擬機(jī)可以支持動(dòng)態(tài)語(yǔ)言的目標(biāo)。接下來(lái)通過(guò)本文給大家介紹Java 8 動(dòng)態(tài)類(lèi)型語(yǔ)言L(fǎng)ambda表達(dá)式實(shí)現(xiàn)原理分析,需要的朋友可以參考下
    2017-02-02
  • SpringBoot和Vue.js實(shí)現(xiàn)的前后端分離的用戶(hù)權(quán)限管理系統(tǒng)

    SpringBoot和Vue.js實(shí)現(xiàn)的前后端分離的用戶(hù)權(quán)限管理系統(tǒng)

    本文主要介紹了SpringBoot和Vue.js實(shí)現(xiàn)的前后端分離的用戶(hù)權(quán)限管理系統(tǒng),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • Java 實(shí)戰(zhàn)項(xiàng)目錘煉之校園宿舍管理系統(tǒng)的實(shí)現(xiàn)流程

    Java 實(shí)戰(zhàn)項(xiàng)目錘煉之校園宿舍管理系統(tǒng)的實(shí)現(xiàn)流程

    讀萬(wàn)卷書(shū)不如行萬(wàn)里路,只學(xué)書(shū)上的理論是遠(yuǎn)遠(yuǎn)不夠的,只有在實(shí)戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用java+jsp+javaweb+mysql+ajax實(shí)現(xiàn)一個(gè)校園宿舍管理系統(tǒng),大家可以在過(guò)程中查缺補(bǔ)漏,提升水平
    2021-11-11
  • 詳解Nacos中注冊(cè)中心和配置中心的實(shí)現(xiàn)

    詳解Nacos中注冊(cè)中心和配置中心的實(shí)現(xiàn)

    Spring?Cloud?Alibaba?是阿里巴巴提供的一站式微服務(wù)開(kāi)發(fā)解決方案。而?Nacos?作為?Spring?Cloud?Alibaba?的核心組件之一,提供了兩個(gè)非常重要的功能:注冊(cè)中心和配置中心,我們今天來(lái)了解和實(shí)現(xiàn)一下二者
    2022-08-08
  • Java中關(guān)于二叉樹(shù)的概念以及搜索二叉樹(shù)詳解

    Java中關(guān)于二叉樹(shù)的概念以及搜索二叉樹(shù)詳解

    二叉樹(shù)是一種很有用的非線(xiàn)性結(jié)構(gòu),日常的開(kāi)發(fā)中常會(huì)用到,關(guān)于二叉樹(shù)的概念以及搜索二叉樹(shù)本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-09-09
  • Java并發(fā)工具類(lèi)Exchanger的相關(guān)知識(shí)總結(jié)

    Java并發(fā)工具類(lèi)Exchanger的相關(guān)知識(shí)總結(jié)

    今天給大家?guī)?lái)的文章是Java工具類(lèi)Exchanger的相關(guān)知識(shí)總結(jié),文中有非常詳細(xì)的介紹及代碼示例,對(duì)正在學(xué)習(xí)java的小伙伴們很有幫助,需要的朋友可以參考下
    2021-06-06
  • Java中extends一定是代表繼承嗎?

    Java中extends一定是代表繼承嗎?

    今天小編就為大家分享一篇關(guān)于Java中extends一定是代表繼承嗎?,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-01-01

最新評(píng)論