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

深入淺析Spring-boot-starter常用依賴模塊

 更新時間:2018年01月23日 08:42:54   作者:小杰梓  
這篇文章主要介紹了Spring-boot-starter常用依賴模塊及spring boot的兩大優(yōu)點,需要的朋友可以參考下

Spring-boot的2大優(yōu)點:

1.基于Spring框架的“約定優(yōu)先于配置(COC)”理念以及最佳實踐之路。

2.針對日常企業(yè)應(yīng)用研發(fā)各種場景的Spring-boot-starter自動配置依賴模塊,且“開箱即用”(約定spring-boot-starter- 作為命名前綴,都位于org.springframenwork.boot包或者命名空間下)。

應(yīng)用日志和spring-boot-starter-logging

常見的日志系統(tǒng)大致有:java.util默認提供的日志支持,log4j,log4j2,commons logging,下面的spring-boot-starter-logging也是其中的一種。

maven依賴:

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

springBoot將使用logback作為應(yīng)用日志的框架,程序啟動時,由org.springframework.boot.logging-Logging-Application-Lisetener根據(jù)情況初始化并使用。

如果要想改變springBoot提供的應(yīng)用日志設(shè)定,可以通過一下原則:

遵循logback的約定,在classpath中使用自己定制的logback.xml配置文件。

在文件系統(tǒng)的任意一個位置提供自己的logback.xml配置文件,然后通過logging.config配置項指向這個配置文件然后引用它,例如在application.properties中指定如下的配置:

logging.config=/{some.path.you.defined}/any-logfile-name-I-like.log}

快速web應(yīng)用開發(fā)與spring-boot-starter-web

maven依賴:

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

在當下項目運行mvn spring-boot:run就可以直接啟用一個嵌套了tomcat的web應(yīng)用。

如果沒有提供任何服務(wù)的Cotroller,訪問任何路徑都會返回一個springBoot默認的錯誤頁面(Whitelabel error page)。

嵌入式Web容器層面的約定和定制

spring-boot-starter-web默認使用嵌套式的Tomcat作為Web容器對外提供HTTP服務(wù),默認端口8080對外監(jiān)聽和提供服務(wù)。

我們同樣可以使用 spring-boot-starter-jetty 或者 spring-boot-starter-undertow 作為Web容器。

想改變默認的配置端口,可以在application.properties中指定:

server.port = 9000(the port number you want)

類似的配置還有:

server.address
server.ssl.*
server.tomcat.*

如果上訴仍然沒有辦法滿足要求,springBoot支持對嵌入式的Web容器實例進行定制,可以通過向IoC容器中注冊一個EmbeddedServletContainerCustomizer類型的組件來對嵌入式的Web容器進行定制

public class UnveilSpringEmbeddedTomcatCustomizer implements EmbeddedServletContainer{
    public void customize(ConfigurableEmbeddedServletContainer container){
      container.setPort(9999);
      container.setContextPath("C\\hello");
              ...
    }
  }

數(shù)據(jù)訪問與spring-boot-starter-jdbc

maven依賴:

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

默認情況下,當我們沒有配置任何DataSource,SpringBoot會為我們自動配置一個DataSource,這種自動配置的方式一般適用于測試,開發(fā)還是自己配置一個DataSource的實例比較好。

如果我們的工程只依賴一個數(shù)據(jù)庫,那么,使用DataSource自動配置模塊提供的參數(shù)是最方便的:

spring.datasource.url=jdbc:mysql://{datasource host}:3306/{databaseName}
spring.datasource.username={database username}
spring.datasource.passwd={database passwd}

還會自動配置的有:JdbcTemplate DateSourceTransactionManager等,我們只要在使用的時候注入(@Autowired)就好了

此外,SpringBoot還支持的數(shù)據(jù)庫有spring-boot-data-jpa spring-boot-data-mongodb

spring-boot-starter-aop應(yīng)用及其使用場景

AOP:Aspect Oriented Programming,面向切面編程

maven依賴:

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

spring-boot-starter-aop主要由2部分組成:

1.位于spring-boot-autoconfigure的org.sringframework.boot.autoconfigure.aop.AopAutoConfiguration提供的@Configuration配置類和相應(yīng)的配置項,即下面的2個配置項:

spring.aop.auto=true
spring.aop.proxy-target-class=false

2.spring-boot-starter-aop模塊提供了針對spring-aop aspectjrt 和aspectjweaver的依賴

應(yīng)用安全與spring-boot-starter-security //todo

總結(jié)

以上所述是小編給大家介紹的Spring-boot-starter常用依賴模塊,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • SpringBoot中多環(huán)境yml的配置與打包問題

    SpringBoot中多環(huán)境yml的配置與打包問題

    這篇文章主要介紹了SpringBoot中多環(huán)境yml的配置與打包問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • spring-boot-starter-validation?校驗參數(shù)的實現(xiàn)

    spring-boot-starter-validation?校驗參數(shù)的實現(xiàn)

    參數(shù)校驗在很多地方都可以用到,本文主要介紹了spring-boot-starter-validation?校驗參數(shù)的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-04-04
  • 詳解java中spring里的三大攔截器

    詳解java中spring里的三大攔截器

    在本篇文章里我們給大家詳細講述了java中spring里的三大攔截器相關(guān)知識點以及用法代碼,需要的朋友們學習下。
    2018-10-10
  • java 下執(zhí)行mysql 批量插入的幾種方法及用時

    java 下執(zhí)行mysql 批量插入的幾種方法及用時

    java 下執(zhí)行mysql 批量插入的幾種方法及用時,1000次插入方法的比較。
    2013-04-04
  • Java并發(fā)系列之JUC中的Lock鎖與synchronized同步代碼塊問題

    Java并發(fā)系列之JUC中的Lock鎖與synchronized同步代碼塊問題

    這篇文章主要介紹了Java并發(fā)系列之JUC中的Lock鎖與synchronized同步代碼塊,簡單介紹了lock鎖及鎖的底層知識,結(jié)合案例給大家介紹的非常詳細,需要的朋友可以參考下
    2022-04-04
  • Java中@DateTimeFormat注解與@JsonFormat注解的使用方式

    Java中@DateTimeFormat注解與@JsonFormat注解的使用方式

    這篇文章主要介紹了Java中@DateTimeFormat注解與@JsonFormat注解的使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Spring-IOC容器中的常用注解與使用方法詳解

    Spring-IOC容器中的常用注解與使用方法詳解

    Spring是一個輕量級Java開發(fā)框架,最早有Rod Johnson創(chuàng)建,目的是為了解決企業(yè)級應(yīng)用開發(fā)的業(yè)務(wù)邏輯層和其他各層的耦合問題,這篇文章給大家詳細介紹Spring-IOC容器中的常用注解與使用方法,感興趣的朋友跟隨小編一起看看吧
    2021-04-04
  • 解決myBatis中openSession()自動提交的問題

    解決myBatis中openSession()自動提交的問題

    在學習MySQL過程中,發(fā)現(xiàn)插入操作自動提交,問題原因可能是myBatis中的openSession()方法設(shè)置了自動提交,或者是MySQL的默認引擎設(shè)置為不支持事務(wù)的MyISAM,解決辦法包括更改myBatis的提交設(shè)置或?qū)ySQL表的引擎改為InnoDB
    2024-09-09
  • MybatisPlus修改時空字段無法修改的解決方案

    MybatisPlus修改時空字段無法修改的解決方案

    這篇文章主要介紹了MybatisPlus修改時空字段無法修改的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Java代碼實現(xiàn)對properties文件有序的讀寫的示例

    Java代碼實現(xiàn)對properties文件有序的讀寫的示例

    本篇文章主要介紹了Java代碼實現(xiàn)對properties文件有序的讀寫的示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11

最新評論