轉載自:http://blog.csdn.net/durendong/article/details/54566027
眾所周知,spring自從3.0開始以后,就全面推薦使用配置的方式進行代碼編寫了,這種方式確實可以避免了之前一個項目里面一大堆XML的情況,畢竟XML的可讀性實在不怎么樣,而且一會寫JAVA,一會寫XML,確實還是蠻麻煩的
就目前來說spring的配置方式一般為兩種:JAVA配置和注解配置。那么什么的是注解配置呢?什么是JAVA配置呢?
//注解配置:
@Service
@Component
@Repository
@Controlle
- 1
- 2
- 3
- 4
- 5
//JAVA配置
@Confirguration 相當於spring的配置文件XML
@Bean 用到方法上,表示當前方法的返回值是一個bean
- 1
- 2
- 3
這兩種方法的區別在於如果使用注解的方式,那么你需要在Serivce層,DAO層的時候,需要在類上進行注解,就可獲得spring的依賴注入:
package di;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
//注解配置
@Service
public class UseFunctionService {
@Autowired
FunctionService functionService;
public String sayHello(String word) {
return functionService.toHello(word);
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
如果使用java配置的方式,那么就不需要在類上寫注解了,直接在配置類里面進行申明即可:
package javaconfig;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class JavaConfig {
//通過這種方式,獲得spring的依賴注入
@Bean
public UseFunctionService useFunctionService () {
return new UseFunctionService ();
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
這兩種方式沒有什么所謂的優劣之分,主要看使用情況,一般來說是這樣:
- 涉及到全局配置的,例如數據庫相關配置、MVC相關配置等,就用JAVA配置的方式
- 涉及到業務配置的,就使用注解方式