spring把所有对象称为bean
首先 标注在类的前面(作用是 将该类注入到Spring容器中,让Spring管理该类)
@Component 是统称 (泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注)
1.@Service("名称") 逻辑层((Service)biz层)
2.@Repository("名称") 数据访问层(Dao层)
3.@Controller("名称") 视图层(Web层)
定义完类后,可以通过
@Autowired(对象类型属性的声明,默认按照类型进行注入)原始的getBean("名称")是按照名称注入的
private UserDao userDao;
如果想按名称注入:
@Autowired
@Qualifier(value="名称")(这时就会按名称注入)
private UserDao userDao;
或者使用
@Resource(name="名称")也会按名称注入,不过要注意他是javax.annotation.Resource下的
private UserDao userDao;
@value(普通属性的声明)
事务:
@Transactional(属性)
readOnly=true/false 为true时只做数据库的打开关闭,不做事务 false
rollbackFor=throwable.class 异常回滚策略