最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解使用Spring快速創(chuàng)建web應(yīng)用的兩種方式

 更新時(shí)間:2019年11月08日 09:36:02   作者:曲翎風(fēng)  
這篇文章主要介紹了詳解使用Spring快速創(chuàng)建web應(yīng)用的兩種方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

介紹

本篇文章主要介紹,如何使用 Spring 開發(fā)一個 Web 應(yīng)用。
我們將研究用 Spring Boot 開發(fā)一個 web 應(yīng)用,并研究用非 Spring Boot 的方法。
我們將主要使用 Java 配置,但還要了解它們的等效的 XML 配置。

使用 Spring Boot

Maven 依賴

首先,我們需要引用 spring-boot-starter-web 依賴:

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

該依賴包含:

  • Spring Web 應(yīng)用程序所需的 spring-web 和 spring-webmvc 模塊
  • Tomcat 容器,這樣我們就可以直接運(yùn)行 Web 應(yīng)用程序,而無需安裝 Tomcat

創(chuàng)建一個Spring Boot 應(yīng)用程序

使用 Spring Boot 的最直接的方法是創(chuàng)建一個主類,并添加 @SpringBootApplication 注解:

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

此單個注釋等效于使用 @Configuration ,@EnableAutoConfiguration 和 @ComponentScan 。

默認(rèn)情況下,它將掃描本包和它的子包中的所有組件。

接下來,對于基于 Java 的 Spring Bean 配置,我們需要創(chuàng)建一個配置類,并使用 @Configuration 注解:

@Configuration
public class WebConfig {
 
}

該注解是 Spring 主要使用的配置。 它本身使用 @Component 進(jìn)行元注解,這使注解的類成為標(biāo)準(zhǔn) bean,因此也成為組件掃描時(shí)的候選對象。

讓我們看看使用核心 spring-webmvc 庫的方法。

使用 spring-webmvc

Maven 依賴

首先,我們需要引用 spring-webmvc 依賴:

<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-webmvc</artifactId>
  <version>5.0.0.RELEASE</version>
</dependency>

基于 java 的 Web 配置

@Configuration
@EnableWebMvc
@ComponentScan(basePackages = "com.qulingfeng.controller")
public class WebConfig {
  
}

在這里與 Spring Boot 的方式不同,我們必須顯式定義 @EnableWebMvc 來設(shè)置默認(rèn)的 Spring MVC 配置,而

@ComponentScan 可以指定用于掃描組件的包。

@EnableWebMvc 注解提供了 Spring Web MVC 配置,比如設(shè)置 dispatcher servlet、啟用 @Controller 和 @RequestMapping 注解以及設(shè)置其他默認(rèn)值。

@ComponentScan 配置組件掃描指令,指定要掃描的包。

初始化類

接下來,我們需要添加一個實(shí)現(xiàn) WebApplicationInitializer 接口的類:

public class AppInitializer implements WebApplicationInitializer {
 
  @Override
  public void onStartup(ServletContext container) throws ServletException {
    AnnotationConfigWebApplicationContext context = new AnnotationConfigWebApplicationContext();
    context.scan("com.qulingfeng");
    container.addListener(new ContextLoaderListener(context));
 
    ServletRegistration.Dynamic dispatcher = 
     container.addServlet("mvc", new DispatcherServlet(context));
    dispatcher.setLoadOnStartup(1);
    dispatcher.addMapping("/");  
  }
}

在這里,我們使用 AnnotationConfigWebApplicationContext 類創(chuàng)建 Spring 上下文,這意味著我們僅使用基于注釋的配置。 然后,我們指定要掃描組件和配置類的包。

最后,我們定義 Web 應(yīng)用程序的入口點(diǎn) — DispatcherServlet 。

此類可以完全替換 < 3.0 Servlet 版本中的 web.xml 文件。

XML配置

讓我們快速看一下等效的XML web配置:

<context:component-scan base-package="com.qulingfeng.controller" />
<mvc:annotation-driven />

我們可以用上面的 WebConfig 類替換這個 XML 文件。
要啟動應(yīng)用程序,我們可以使用一個初始化器類來加載 XML 配置或 web.xml 文件。

結(jié)束語

在篇文章中,我們研究了兩種用于開發(fā) Spring Web 應(yīng)用程序的流行方式,一種使用 Spring Boot Web 啟動程序,另一種使用核心 spring-webmvc 庫。

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

相關(guān)文章

  • Java BeanUtils.copyProperties的詳解

    Java BeanUtils.copyProperties的詳解

    這篇文章主要介紹了Java BeanUtils.copyProperties的詳解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • 如何解決LocalDateTime傳值JSON格式化問題

    如何解決LocalDateTime傳值JSON格式化問題

    這篇文章主要介紹了如何解決LocalDateTime傳值JSON格式化問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • Java Spring的數(shù)據(jù)庫開發(fā)詳解

    Java Spring的數(shù)據(jù)庫開發(fā)詳解

    這篇文章主要介紹了Spring的數(shù)據(jù)庫開發(fā),主要圍繞SpringJDBC和Spring Jdbc Template兩個技術(shù)來講解,文中有詳細(xì)的代碼示例,需要的小伙伴可以參考一下
    2023-04-04
  • Spring的自動裝配Bean的三種方式

    Spring的自動裝配Bean的三種方式

    本篇文章主要介紹了 Spring的自動裝配Bean的三種方式,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • 帶你輕松搞定Java面向?qū)ο蟮木幊?-數(shù)組,集合框架

    帶你輕松搞定Java面向?qū)ο蟮木幊?-數(shù)組,集合框架

    Java是面向?qū)ο蟮母呒壘幊陶Z言,類和對象是 Java程序的構(gòu)成核心。圍繞著Java類和Java對象,有三大基本特性:封裝是Java 類的編寫規(guī)范、繼承是類與類之間聯(lián)系的一種形式、而多態(tài)為系統(tǒng)組件或模塊之間解耦提供了解決方案
    2021-06-06
  • Java位集合之BitMap實(shí)現(xiàn)和應(yīng)用詳解

    Java位集合之BitMap實(shí)現(xiàn)和應(yīng)用詳解

    這篇文章主要介紹了Java位集合之BitMap實(shí)現(xiàn)和應(yīng)用的相關(guān)資料,BitMap是一種高效的數(shù)據(jù)結(jié)構(gòu),適用于快速排序、去重和查找等操作,通過簡單的數(shù)組和位運(yùn)算,可以在Java中實(shí)現(xiàn)BitMap,從而節(jié)省存儲空間并提高性能,需要的朋友可以參考下
    2024-12-12
  • MyBatis insert操作插入數(shù)據(jù)之后返回插入記錄的id

    MyBatis insert操作插入數(shù)據(jù)之后返回插入記錄的id

    今天小編就為大家分享一篇關(guān)于MyBatis插入數(shù)據(jù)之后返回插入記錄的id,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • Java類加載連接和初始化原理解析

    Java類加載連接和初始化原理解析

    這篇文章主要介紹了Java類加載連接和初始化原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • 如何使用SpringBootCondition更自由地定義條件化配置

    如何使用SpringBootCondition更自由地定義條件化配置

    這篇文章主要介紹了如何使用SpringBootCondition更自由地定義條件化配置,幫助大家更好的理解和學(xué)習(xí)使用springboot框架,感興趣的朋友可以了解下
    2021-04-04
  • Spring Boot讀取配置屬性常用方法解析

    Spring Boot讀取配置屬性常用方法解析

    這篇文章主要介紹了Spring Boot讀取配置屬性常用方法解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09

最新評論

柏乡县| 根河市| 湛江市| 博爱县| 邯郸市| 仁化县| 灌阳县| 宁波市| 西丰县| 边坝县| 昌平区| 徐闻县| 浦东新区| 桐梓县| 仁怀市| 中山市| 泾阳县| 那曲县| 北碚区| 苍溪县| 绿春县| 府谷县| 白朗县| 九江县| 和平县| 衡水市| 田林县| 改则县| 平泉县| 阆中市| 金湖县| 无为县| 新和县| 伊吾县| 五华县| 饶河县| 黄梅县| 磴口县| 辉南县| 临朐县| 凭祥市|