摘要:的發(fā)展時(shí)代主要使用配置和代碼的方式隨著帶來的注解支持,可以使用注解對(duì)進(jìn)行申明和注入,大大的減少了配置文件,同時(shí)也大大簡化了項(xiàng)目的開發(fā)。同時(shí)我們可以注意對(duì)數(shù)據(jù)源的設(shè)置。
Spring的發(fā)展 1、Spring 1.x
spring 1.x 時(shí)代主要使用xml配置和java代碼的方式
2、Spring 2.x隨著JDK 1.5帶來的注解支持,Spring2.x可以使用注解對(duì)Bean進(jìn)行申明和注入,大大的減少了xml配置文件,同時(shí)也大大簡化了項(xiàng)目的開發(fā)。
1、 應(yīng)用的基本配置用xml,比如:數(shù)據(jù)源、資源文件等;
2、 業(yè)務(wù)開發(fā)用注解,比如:Service中注入bean等;
從Spring3.x開始提供了Java配置方式,使用Java配置方式可以更好的理解你配置的Bean,現(xiàn)在我們就處于這個(gè)時(shí)代,并且Spring4.x和Springboot都推薦使用java配置的方式。
3.1 Spring 3.x,4.x 注解說明@Configuration
@Configuration作用于類上,相當(dāng)于一個(gè)xml配置文件;
@Bean
@Bean作用于方法上,相當(dāng)于xml配置中的
讀取外部配置文件
類上的注解:
@Configuration//通過該注解來表明該類是一個(gè)Spring的配置,相當(dāng)于一個(gè)xml文件
@ComponentScan(basePackages = "com.xxx.xxx") //配置掃描包
@PropertySource(value= {"classpath:jdbc.properties"})
注解配置到field
eg:
@Value("${jdbc.url}")
private String jdbcUrl;
備注:
1、查看PropertySource.java可以發(fā)現(xiàn),可以配置多個(gè)配置文件,可以處理找不到的情況。
/** * @Bean 相當(dāng)與獲取一個(gè)bean,類似xml 方式的配置,方法名就是xml方式配置bean的id,所 *以方法不用getDataSource, id 一般不用getXXX. * @return */ **@Bean(destroyMethod = "close")**//destroyMethod = "close" public DataSource dataSource() { BoneCPDataSource boneCPDataSource = new BoneCPDataSource(); // 數(shù)據(jù)庫驅(qū)動(dòng) boneCPDataSource.setDriverClass(jdbcDriverClassName); // 相應(yīng)驅(qū)動(dòng)的jdbcUrl boneCPDataSource.setJdbcUrl(jdbcUrl); // 數(shù)據(jù)庫的用戶名 boneCPDataSource.setUsername(jdbcUsername); // 數(shù)據(jù)庫的密碼 boneCPDataSource.setPassword(jdbcPassword); // 檢查數(shù)據(jù)庫連接池中空閑連接的間隔時(shí)間,單位是分,默認(rèn)值:240,如果要取消則設(shè)置為0 boneCPDataSource.setIdleConnectionTestPeriodInMinutes(60); // 連接池中未使用的鏈接最大存活時(shí)間,單位是分,默認(rèn)值:60,如果要永遠(yuǎn)存活設(shè)置為0 boneCPDataSource.setIdleMaxAgeInMinutes(30); // 每個(gè)分區(qū)最大的連接數(shù) boneCPDataSource.setMaxConnectionsPerPartition(100); // 每個(gè)分區(qū)最小的連接數(shù) boneCPDataSource.setMinConnectionsPerPartition(5); final Connection connection; try { connection = boneCPDataSource.getConnection(); System.out.println("數(shù)據(jù)庫連接為:"); System.out.println(connection); } catch (SQLException e) { e.printStackTrace(); } return boneCPDataSource; }
**備注:** 1、@Bean(destroyMethod = "close")以便Spring容器關(guān)閉時(shí),數(shù)據(jù)源能夠正常關(guān)閉;銷毀方法調(diào)用close(),是將連接關(guān)閉,并不是真正的把資源銷毀。 2、同時(shí)我們可以注意BoneCPDataSource 對(duì)數(shù)據(jù)源的設(shè)置。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/72168.html
摘要:即,根據(jù)包依賴,添加自動(dòng)配置。會(huì)讀取的核心配置文件中的配置備注的條件注解 SpringBoot自動(dòng)配置 1、自動(dòng)配置之spring.factories showImg(https://segmentfault.com/img/bVbjyDr?w=693&h=130); showImg(https://segmentfault.com/img/bVbjyDs?w=409&h=184); ...
摘要:自動(dòng)配置會(huì)根據(jù)項(xiàng)目中的包依賴,自動(dòng)做出配置,支持的自動(dòng)配置如下非常多甚至包含了備注如果我們不需要自動(dòng)配置,想關(guān)閉某一項(xiàng)的自動(dòng)配置,該如何設(shè)置呢比如我們不想自動(dòng)配置,想手動(dòng)配置。 SpringBoot 入門 1、SpringBoot 入口類說明 1.1注解說明 showImg(https://segmentfault.com/img/bVbjvc9?w=707&h=232);@Sprin...
摘要:之開發(fā)自動(dòng)配置類說明開發(fā)的自動(dòng)配置類比如的前后綴配置在中對(duì)應(yīng)方法對(duì)應(yīng)配置文件靜態(tài)資源配置說明如果進(jìn)入的規(guī)則為時(shí),的默認(rèn)靜態(tài)資源的路徑為如果某個(gè)靜態(tài)文件不在上面的配置路徑中,那么從瀏覽器中就訪問不到了自定義消息轉(zhuǎn)化器原有的配置配置自定義攔 SpringBoot 之web開發(fā) 1、自動(dòng)配置類說明 Web開發(fā)的自動(dòng)配置類: org.springframework.boot.au...
摘要:全局配置文件配置項(xiàng)目使用一個(gè)全局的配置文件或者是,在目錄下或者類路徑下的下,一般我們放到下。參考如備注附加配置 SpringBoot 全局配置文件 1、SpringBoot 配置 SpringBoot項(xiàng)目使用一個(gè)全局的配置文件application.properties或者是application.yml,在resources目錄下或者類路徑下的/config下,一般我們放到resou...
摘要:簡單來說,是一個(gè)輕量級(jí)的控制反轉(zhuǎn)和面向切面的容器框架。變成的支持提供面向切面編程,可以方便的實(shí)現(xiàn)對(duì)程序進(jìn)行權(quán)限攔截,運(yùn)行監(jiān)控等功能。用于反射創(chuàng)建對(duì)象,默認(rèn)情況下調(diào)用無參構(gòu)造函數(shù)。指定對(duì)象的作用范圍。 1.Spring介紹 1.1 Spring概述 Spring是一個(gè)開源框架,Spring是于2003 年興起的一個(gè)輕量級(jí)的Java 開發(fā)框架,由Rod Johnson 在其著作Expert...
閱讀 3521·2023-04-25 22:45
閱讀 1315·2021-11-11 16:54
閱讀 2821·2019-08-30 15:44
閱讀 3211·2019-08-30 15:44
閱讀 1674·2019-08-30 13:55
閱讀 974·2019-08-29 18:45
閱讀 1227·2019-08-29 17:25
閱讀 1039·2019-08-29 12:59