開發步驟:
1、匯入Spring開發的基本坐標
2、撰寫介面和實作類
3、創建Spring核心組態檔
4、在Spring核心組態檔中配置實作類
5、使用Spring的API獲得Bean實體
Bean物件的依賴注入:
依賴注入:他是Spring框架核心IOC的具體實作,
因為UserService和其實作類都在Spring容器中,而最終程式直接使用的是UserService,
所以可以在Spring容器中,將UserDao設定到UserService內部,
通過兩種方式注入:
1、構造方法
2、set方法
注入資料的三種資料型別:
1、普通資料型別
2、參考資料型別
3、集合資料型別
其他組態檔的引入(分模塊開發):
<import resource="applicationContext-xxx.xml/>"
applicationContext:介面型別,代表應用背景關系,
它有三種實作:
1、ClassPathXmlApplicationContext:從類的根路徑下加載組態檔
2、FileSystemXmlApplicationContext:它是從磁盤路徑上加載組態檔,組態檔可以在磁盤的任意位置
3、AnnotationConfigApplicationContext:當使用注解配置容器物件時,需要用到此類來創建spring容器,它是用來讀取注解,
bean標簽的范圍配置: scope屬性:singleton:默認值,單例的 prototype:多例的
關于bean實體化的三種方式:
1、無參構造方法實體化
2、工廠靜態方法實體化 配置屬性:factory-method
3、工廠實體方法實體化 需要先配置工廠物件<bean id="factory" />、
物件的參考使用ref標簽,屬性的參考使用value標簽
spring的注解開發:
使用注解進行開發時,需要在applicationContext.xml中配置組件掃描
作用是指定哪個包及其自爆下的Bean需要進行掃描以便識別用注解配置的類
,欄位和方法,
<context:component-scan base-package="類名(掃描的范圍)" ></context:component-scan>
*@Component :使用在類上用于實體化Bean
*@Controller :使用在web層上用于實體化Bean
@Service : 使用在service層類上用于實體化Bean
@Repository : 使用在dao層類上用于實體化Bean
@Autowired :使用在欄位上用于根據型別依賴注入
@Qualifier :結合@Autowiered一起使用用于根據名稱進行依賴注入 按照id值從容器中進行匹配,但是注意此處@Qualifier結合@Autowired一起使用
@Resource : 相當于@Autowired + @Qualifier,按照名稱進行注入
@Value : 注入普通屬性
@Scope : 標注Bean的作用范圍
@PostConstruct : 使用在方法上標注該方法是Bean的初始化方法
@PreDestroy : 使用在方法上面標注該方法是Bean的銷毀方法
Spring的新注解:
@Configuration : 用于指定當前類是一個Spring配置類,當創建容器時會從該類上加載注解 類上面加上它標志該類是spring的核心配置類
@PropertySource :用于加載組態檔
@ComponentScan : 用于指定Spring在初始化容器時要掃的包, 組件掃描
@Bean : 使用在方法上 spring會將當前方法的回傳值以指定名稱存盤到Spring容器中
@import : 用于匯入其他配置類
spring整合Junit:
spring集成junit步驟
1、匯入spring集成junit 的坐標
2、使用@Runwith注解替換原理啊的運行期 在類上使用 @RunWith(SpringJUit4ClassRunner)
3、使用@ContextCOnfigurarion指定組態檔或配置類
4、使用@Autowired注入需要測驗的物件
5、創建測驗方法進行測驗
@RunWith(SpringJUit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml"):告訴組態檔的位置 使用全注解方式:@ContextConfiguration(classes = {SpringConfiguration.class} )
@Autowired : 測驗誰需要加上它
@Test : 進行測驗
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/233775.html
標籤:Java
上一篇:maven資源匯出問題
