其实学习注解之后 我们也只有一个开启扫描需要xml的配置了
而 这一步 其实也是可以写到类里面的
我们这边先创建一个java项目
然后引入 spring需要的几个基本包
在src中创建一个包 叫 Bean
Bean下创建 一个包 叫 UserData
UserData 包下创建一个类 我这里叫 User
参考代码如下
package Bean.UserData;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
@Component(value = "User")
public class User {
@Value(value = "abc")
private String name;
public String toString(){
return "name="+name;
}
}
这个类只是到最后用来测试用的 好的 那么我们下面来写配置的类
然后 我们在src下创建一个包 我这里叫 config
在config包下创建一个类 我这里叫 operation
参考代码如下
package config;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
@Configuration //作为配置类,代xmi配置文件
@ComponentScan (basePackages = {"Bean.UserData","Bean"})
public class operation {
}
Configuration 注解就代表 要按一个配置文件的方式来读本类
ComponentScan 注解的basePackages 等于一个字符串数组 数组里的字符串表示将会扫描的包
ComponentScan 就相当于我们之前的 context:component-scan标签和他上面的 base-package
然后我们在src下创建测试类 参考代码如下
import Bean.UserData.User;
import config.operation;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
public class text {
public static void main(String args[]) {
ApplicationContext context = new AnnotationConfigApplicationContext(operation.class);
User user = context.getBean("User", User.class);
System.out.println(user);
}
}
测试类 稍稍做了一定改动 实现对象改成了AnnotationConfigApplicationContext 接受的是一个配置类的对象
例如 我们这里配置文件是operation类
那么就是 operation.class