最近突發奇想,整合一下以前一些學習筆記,分享自己這幾年爬過的坑,逐步更新文章,謝謝大家的關注和支持,
這節講一下SpringBoot的學習必須的一些基礎,Java配置,其實在Spring2.0時代就已經有注解配置了,但是開發人員還是喜歡注解和xml混合配置,當SpringBoot出來后,這個全注解配置,即Java配置就成為主流,
講一個例子
在SpringMVC+Spring+Mybatis框架整合時,必須注入IOC容器的時一個資料庫連接池,因此做過SSM架構搭建的人都知道要配置以下
<!-- 配置連接池 -->
<bean id="dataSource" class="com.alibab.druid.pool.DruidDataSource">
<property name="driverClassName" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</bean>
在SpringBoot中如何通過Java配置把其中注入呢(這邊只是講個例子,SpringBoot有整合了Mybatis依賴,因此不需要我們自己注入,不過大家可以通過這個例子來進行注入一些SpringBoot沒提供的整合依賴包)
比較常用的注解有下面有:
@Configuration:宣告一個類作為配置類,代替xml檔案
@Bean : 宣告在方法上,其回傳值注入到Bean容器中,默認id為方法名
@Value : 屬性注入
@Property:指定外部屬性檔案
匯入Druid的依賴
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.6</version>
</dependency>
如果Spring2.0學過注解配置的話,其實通過這些就可配置了,撰寫一個JdbcConfig類
@Configuration
@PropertySource("classpath:jdbc.properties")
public class JdbcConfig {
@Value("{#jdbc.driverClassName}")
private String driverClassName;
@Value("{#jdbc.url}")
private String url;
@Value("{#jdbc.username}")
private String username;
@Value("{#jdbc.password}")
private String password;
@Bean
public DataSource dataSource() {
DruidDataSource dataSource = new DruidDataSource();
dataSource.setDriverClassName(driverClassName);
dataSource.setUrl(url);
dataSource.setUsername(username);
dataSource.setPassword(password);
return dataSource;
}
}
撰寫一個jdbc.properties檔案

這邊只是測驗注入,因此沒必要真的鏈接資料庫,只有看到注入成功就行,在測驗類中測驗注入情況,通過打斷點debu運行,發現注入成功,

SpringBoo提供了更加優雅的配置,SpringBoot的核心組態檔application.properties
因此刪去jdbc.properties,在application.properties在添加相應的內容
修改jdbcConfig類,使用 @ConfigurationProperties注解
@Configuration
//@PropertySource("classpath:jdbc.properties")
public class JdbcConfig {
@Bean
@ConfigurationProperties(prefix = "jdbc")
public DataSource dataSource() {
return new DruidDataSource();
}
}

再次測驗也成功,是不是特別簡單的注入,
博主的堅持 離不開大家關注、評論和點贊,感謝大家支持,護發路上互相扶持!!!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/243565.html
標籤:java
下一篇:JAVA復習題(一)基礎知識
