Spring通过注解配置bean
标签(空格分隔): spring
1.spring的配置方式除了之前使用的xml文件的方式外,还可以使用注解的方式。
2.组件扫描:spring能够从classpath下自动扫描,侦测和实例化具有特定注解的组件。
特定组件包括:
@Component:基本注解,标识了一个受spring管理的组件。
@Respository:标识持久层组件
@Service:标识服务层(业务层)组件
@Controller:标识表现层组件
3.当在组件类上使用了特定的注解之后,还需要在Spring的配置文件中声明:它的属性base-package指定一个需要扫描的基类包,spring将会扫描这个基类包里及其子包中的所有类;当需要扫描多个包时,可以使用逗号分隔。如果仅希望扫描特定的类而非基类包下的所有类,可使用resource-pattern属性过滤特定的类。
下面是一个例子:
先定义几个带注解的类:
@Component
public class TestObject {
}
@Controller
public class UserController {
public void execute(){
System.out.println("UserController execute...");
}
}
@Service
public class UserService {
public void add(){
System.out.println("UserService add...");
}
}
上面三个类分别注解为component,controller,service。
接着再定义一个带注解的接口实现类:
public interface UserRepository {
void save();
}
@Repository(“userRepository”)
public class UserRepositoryImpl implements UserRepository {
@Override
public void save() {
System.out.println("UserRepositoryImpl save...");
}
}
接着在配置文件中使用