一、註解基本使用介紹
二、環境
三、**實現
四、簡化上述**
五、註解
六、bean新增別名
使用annotation注釋替換之前較為複雜的spring.xml管理**的方式。
1.pom
org.springframework
spring-core
4.3.7.release
org.springframework
spring-context
4.3.7.release
junit
junit
4.12
test
1.**
(1)bean1類
package com.spring.ioc;
/** * created by administrator on 2019/10/26.
*/public class bean1
(2)myconfiguration類(相當於之前的spring.xml檔案)
package com.spring.ioc;
import org.springframework.context.annotation.configuration;
import org.springframework.context.annotation.bean;
/** * created by administrator on 2019/10/26.
*/@configuration
public class myconfiguration
}
2.測試
package com.spring.ioc;
import org.junit.test;
/** * created by administrator on 2019/10/26.
*/public class testcode
}
結果:
bean1 = com.spring.ioc.bean1@36f0f1be
1.myconfiguration.class類
在配置檔案上面新增componentscan註解,掃瞄指定包下面的例項物件
package com.spring.ioc;
import org.springframework.context.annotation.componentscan;
import org.springframework.context.annotation.configuration;
import org.springframework.context.annotation.bean;
/** * created by administrator on 2019/10/26.
*/@configuration
@componentscan(value = "com.spring.ioc")
public class myconfiguration
2.bean1.class類
新增@component註解,說明是乙個交由spring管理的bean物件。備註:value可以指定對應id,預設id是方法的bean的第乙個字母小寫。
package com.spring.ioc;
import org.springframework.stereotype.component;
/** * created by administrator on 2019/10/26.
*/@component(value = "bean2")
public class bean1
3.測試**
package com.spring.ioc;
import org.junit.test;
/** * created by administrator on 2019/10/26.
*/public class testcode
}
結果
bean1 = com.spring.ioc.bean1@2145433b
1.@controller:被標註在controller層
2.@service:被標註在service層
3.@repository:被標註在dao層
4.@component:通用型註解
1.修改配置檔案
只能用比較複雜的注入方式
package com.spring.ioc;
import org.springframework.context.annotation.componentscan;
import org.springframework.context.annotation.configuration;
import org.springframework.context.annotation.bean;
/** * created by administrator on 2019/10/26.
*/@configuration
//@componentscan(value = "com.spring.ioc")
public class myconfiguration )
public bean1 bean1()
}
2.bean1類
package com.spring.ioc;
import org.springframework.stereotype.component;
/** * created by administrator on 2019/10/26.
*///@component(value = "bean2")
public class bean1
4.測試**
package com.spring.ioc;
import org.junit.test;
/** * created by administrator on 2019/10/26.
*/public class testcode
}
測試**
bean1 = com.spring.ioc.bean1@36f0f1be
bean3 = com.spring.ioc.bean1@36f0f1be
Spring7大模組了解
spring7大模組 spring core spring中提供了兩個概念 乙個概念叫做 ioc 控制反轉 控制反轉,反轉的是啥?1 舉例 以前我們在建立類的的時候 怎麼建立的?自己程式建立的 new這個關鍵字來建立的 有了spring之後這個物件的建立 就不是我們來完成了 而是由 spring來完...
Spring7種事務傳播行為型別
事務傳播行為種類 spring在transactiondefinition介面中規定了7種型別的事務傳播行為,它們規定了事務方法和事務方法發生巢狀呼叫時事務如何進行傳播 事務傳播行為型別 事務傳播行為型別 說明propagation required 如果當前沒有事務,就新建乙個事務,如果已經存在乙...
Spring常用的基本註解
dao repository 寫在dao層 service service 寫在service層 controller controller 寫在controller層 scope 寫在多人訪問controller上 屬性注入 autowired 寫在需要注入的屬性上 resource name l...