@org.springframework.stereotype.Service
表示当前类受Spring控制,由Spring 负责该类的实例创建和销毁工作。可以在其他类中通过IOC机制注入。
位置:使用于类级别
参数:name-在Spring 中注册的名称,默认为第一个字母小写的类名。建议不指定名称。
样例:
使用默认的BeanName:@Service
指定BeanName:@Service(“beanName”)
@org.springframework.context.annotation.Scope
当前类在Spring 中创建实例的有效范围,可以是单例,或每次创建一个新的实例,或是每个session创建一个实例。Spring默认为单实例,如果没有特殊需要可以不设置此标签。
位置:使用于类级别
参数:value-实例的有效范围
样例:
单实例:@Scope("singleton")
每次创建新实例:@Scope("prototype")
Session 范围实例:@Scope("session")
@org.springframework.transaction.annotation.Transactional
启动事务控制,写入该标签后可以启动事务控制。
位置:使用于类级别或方法级别,建议使用在方法级别上。
参数:readOnly -是否是只读事务,默认为false
样例:@Transactional(readOnly = false)
@org.springframework.beans.factory.annotation.Autowired
自动装配标签,用于IOC注入,可以根据类型获取相应实例。
位置:使用于类变量或setter方法,可以不是public作用域。
参数:required – 是否必须设置,默认为true
样例:@Autowired
@org.springframework.beans.factory.annotation.Qualifier
和@Autowired配合使用,可以指定@Autowired标签注入的BeanName,如不指定根据类型自动查询实例注入。
位置:使用于类变量或setter方法,可以不是public作用域
参数:String,Bean的名称
样例:@Qualifier("sessionFactoryXsmfms")
@javax.annotation.PostConstruct
Spring在创建实例时执行的初始化动作。
位置:使用于方法级别
参数:无
@javax.annotation.PreDestroy
Spring在销毁实例时执行的清理动作。
位置:使用于方法级别
参数:无