您的位置:首页 > 编程语言 > Java开发

在Spring中使用@Configuration注解加载JavaConfig配置

2017-01-06 10:27 585 查看
如题所示,从一些翻译至国外的书籍中可以看到,一些西方人喜欢使用没有XML文件的纯粹的JavaConfig配置。但是一方面在国内我们通常都习惯使用XML文件来配置SpringMVC、Ehcache、Shiro等组件的具体参数配置,另一方面我个人认为适当使用基于XML文件的配置是可以有效减少配置文件的代码量的。因此,如果想要在项目中加载一部分的JavaConfig应该如何做呢?(1)新建一个测试用例:
package cn.zifangsky.config;

import org.springframework.beans.factory.annotation.Autowire;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import cn.zifangsky.model.User;

@Configuration
public class UserConfig {

@Bean(autowire=Autowire.BY_NAME,name="u")
public User user(){
return new User("root","123456");
}

}
这里使用了@Configuration注解表明这个类是一个配置类,同时使用了@Bean定义了一个名为“u”的User类型的bean(2)在Spring的配置文件中添加需要自动扫描这个包中的注解:
<context:component-scan base-package="cn.zifangsky.config" />
这里也就是“cn.zifangsky.config”这个包(3)测试Controller:
package cn.zifangsky.controller;

import javax.annotation.Resource;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

import cn.zifangsky.model.User;

@Controller
public class TestController {
@Resource(name="u")
User user;

@RequestMapping("/test.html")
public void test(){
System.out.println("测试name:" + user.getName());
}

}
可以看到,这里使用的@Resource注解按名字“u”注入了之前定义好的bean(4)测试:启动项目后访问:http://localhost:8080/Demo/test.html控制台输出如下:
测试name:root
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Java Config @Configuration