java中常用注解



一、spring家族

扫描指定的包中的类上的注解,常用的注解有:



@Controller 声明Action组件
@Service    声明Service组件    @Service("myMovieLister") 
@Repository 声明Dao组件
@Component   泛指组件, 当不好归类时. 
@RequestMapping("/menu")  请求映射

@Resource  用于注入,( j2ee提供的 ) 默认按名称装配,@Resource(name="beanName") 

@Resource, @Resource有两个中重要的属性:name和type ,而Spring将@Resource注解的name属性解析为bean的
    名字.(即bean的id名),而type属性则解析为bean的类型。所以如果使用name属性,则使用byName的自动注入策略,而使用
    type属性时则使用 byType自动注入策略。如果既不指定name也不指定type属性,这时将通过反射机制使用by
    Name自动注入策略。

 例如:

@Resource(name="baseDao")
private BaseDao baseDao;

 


@Autowired 用于注入,(srping提供的) 默认按类型装配 ,可以不用使用set,get方法

@Autowired默认按类型装配,默认情况下必须要求依赖对象必须存在,如果要允许null值,可以设置它的required属性为false,例如:@Autowired(required=false) ,如果我们想使用名称装配可以结合@Qualifier注解进行使用,如下:

@Autowired() 
@Qualifier("baseDao")
private BaseDao baseDao;

 


@Transactional( rollbackFor={Exception.class}) 事务管理
@ResponseBody

@Scope("prototype")   设定bean的作用域


2.当接口中有多个实现类时,实例绑定办法

绑定办法有两种

1)@Qualifier注解
通过这个标示,表明了哪个实现类才是我们所需要的


@see http://www.cnblogs.com/smileLuckBoy/p/5801678.html


2)@Primary 


用@Primary 告诉spring 在犹豫的时候优先选择哪一个具体的实现。


@see http://www.cnblogs.com/myhappylife/p/5647098.html



3.引入配置文件


1)@PropertySource  

引入 .properties配置文件

如@PropertySource(value="rop.appSecret.properties")



2)@ImportResource
引入xml等配置文件

如@ImportResource(locations={"spring-rop-conf.xml","dubbo-consumer.xml","dubbo-provider.xml"})




你可能感兴趣的:(java中常用注解)