spring ioc容器的2種形式:
儲存bean的形式:
獲取bean的形式:
//建立ioc容器物件
//從ioc容器中獲取bean例項
student student = (student)context.getbean("student");
儲存bean的形式:
就是在方法名前加@bean註解,bean的id就是方法名
@configuration
public class myconfig
}
獲取bean的形式:
//建立ioc容器物件 通過註解形式
//從ioc容器中獲取bean例項
student student = (student)context.getbean("mystudent");
@configuration註解用於定義類
三層元件
controller層使用@controller註解
@controller
public class studentcontroller
service層使用@service註解
@service
public class studentservice
dao層使用@repository註解
@repository
public class studentdao
配置檔案方式將註解所在包載入到ioc掃瞄器中
在配置檔案中配置以下內容:
註解方式將註解所在包載入到ioc掃瞄器中
在ioc容器中(帶有@configuration註解的類)使用@componentscan(value =「org.lyh」)註解,value值為包名:
@configuration
@componentscan(value ="org.lyh")
public class myconfig
}
2…非三層元件
@bean+方法的返回值(id值預設是方法名,可以通過@bean(「id」)修改)@bean+方法的返回值示例:@import
factorybean
@bean//bean的id就是方法名
public student mystudent()
@import使用:
1.直接編寫到@import中,id值是全類名直接編寫到@import中示例:2.自定義importselector介面的實現類,通過重寫selectimports方法實現(方法的返回值就是要納入ioc容器的bean)。並且告知配置類自己編寫的實現類。
3.自定義importbeandefinitionregistrar介面的實現類,重寫方法,並且告知配置類自己編寫的實現類。
@configuration
public class myconfig
}
自定義importselector介面的實現類示例:
}
自定義importbeandefinitionregistrar介面的實現類示例:
實現importbeandefinitionregistrar介面factorybean(工廠bean)使用:public class myimportbeandefinitionregistrar implements importbeandefinitionregistrar
}告知配置類自己編寫的實現類
@configuration
@import(myimportbeandefinitionregistrar.class)
public class myconfig
1.自定義實現類實現factorybean介面並重寫方法factorybean示例:2.註冊到@bean中
注意:獲取bean時需要通過&符號來區分獲取的物件時哪乙個,不加&獲取的是工廠內部的物件,加&獲取的是@bean返回的物件
1.自定義實現類實現factorybean介面並重寫方法
spring 基於註解的spring配置
spring是乙個基於ioc和aop的結構j2ee系統的框架 ioc 反轉控制 是spring的基礎,inversion of control 簡單說就是建立物件由以前的程式設計師自己new 構造方法來呼叫,變成了交由spring建立物件 di 依賴注入 dependency inject.簡單地說...
Spring 基於註解的配置
從 spring 2.5 開始就可以使用註解來配置依賴注入。而不是採用 xml 來描述乙個 bean 連線,你可以使用相關類,方法或字段宣告的註解,將 bean 配置移動到元件類本身。在 xml 注入之前進行註解注入,因此後者的配置將通過兩種方式的屬性連線被前者重寫。註解連線在預設情況下在 spri...
Spring 基於註解的AOP
用於記錄日誌的工具類,它裡面提供了公共的 component logger aspect 表示當前類是乙個切面類 public class logger 前置通知 before pt1 public void beforeprintlog 後置通知 afterreturning pt1 public...