spring配置檔案比較繁瑣,影響開發效率,用註解代替xml配置是一種趨勢。
註解有:
例項化類
@compnent("") 在所有層的類上例項化bean
@controller("") 在web層的類上例項化bean
@service("") 在service層
@repository("") 在dao層
例項物件注入
@autowired() 從spring容器中匹配並注入,僅限於只有乙個
@qalifier("") 按照id值從容器中匹配並注入,需要結合autowired()
@resource("") 相當於上面兩個的結合。
一般資料型別注入
@value("$") 直接從配置檔案中取值並賦值
作用範圍
@scope("prototype") 預設乙個,現在可以例項多個類
初始化方法
@postconstruct init()方法上面
銷毀方法
@predestory destory()方法上面
使用上面註解不能全部替代xml配置,有:
新註解:
@componentscan("com") 元件掃瞄該包
@propertysource("classpath:druid.properties") 載入外部檔案
@bean("***")
@import("") 引入其他的配置類
在resources中放入druid.properties
jdbc.driverclassname=com.mysql.jdbc.driver
jdbc.url=jdbc:mysql:
jdbc.username=root
jdbc.password=root
新建乙個config.springconfig類
@configuration
@componentscan("com")
@propertysource("classpath:druid.properties")
public class springconfig ") // ${} 這個叫springel
private string driver;
@value("$")
private string url;
@value("$")
private string username;
@value("$")
private string password;
@bean("datasource")
public druiddatasource getdatasource()
}
測試類
connection conn = bean.getconnection();
system.out.println(conn);
conn.close();
spring測試很麻煩
為了省略上面這些,需要
步驟:匯入spring整合junit的座標spring-test
使用@runwith註解原來的執行期
使用@contextconfigurationi指定配置類
使用@autowired注入需要的測試物件
建立測試方法進行測試
首先匯入spring整合的junit座標spring-test
編寫測試類,測試方法:
@runwith(springjunit4classrunner.class)
@contextconfiguration(classes = )
public class springtest
}
spring框架提供的jdbctemplate簡化了開發,提供了許多操作模板類。
使用步驟:
匯入座標:spring-jdbc
和spring-tx
org.springframework
spring-jdbc
5.0.2.release
org.springframework
spring-tx
5.0.2.release
建立資料庫表和實體(domain模板)
使用jdbctemplate
在上述測試類中,繼續寫:
@test
public void testselectall() throws sqlexception
Spring註解開發
spring註解開發 dao層用的註解 repository service層的註解 service controller表現層的註解 controller 以上的三個註解都是用 componment新增三個衍生的註解 屬性依賴注入 value的屬性注入 value wwtmy love 注入的是屬...
spring註解開發
第一步,設定xml約束檔案 第一步,設定xml約束檔案 xmlns xsi xmlns context xsi schemalocation spring beans.xsd spring context.xsd 第二步,定義bean 除了 component外,spring提供了3個功能基本和 c...
Spring註解開發
在spring4之後,要使用註解開發,但是必須保證aop的包存在 使用註解必須保證匯入context約束增加註解的支援 xmlns xmlns xsi xmlns context xsi schemalocation spring beans.xsd spring context.xsd conte...