`

spring @component的作用

 
阅读更多

 

1、@controller 控制器(注入服务)
2、@service 服务(注入dao)
3、@repository dao(实现dao访问)
4、@component (把普通pojo实例化到spring容器中,相当于配置文件中的<bean id="" class=""/>)


  @Component,@Service,@Controller,@Repository注解的类,并把这些类纳入进spring容器中管理。 
下面写这个是引入component的扫描组件 
<context:component-scan base-package=”com.mmnc”>    

其中base-package为需要扫描的包(含所有子包) 
       1、@Service用于标注业务层组件 
       2、@Controller用于标注控制层组件(如struts中的action) 
       3、@Repository用于标注数据访问组件,即DAO组件. 
       4、@Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。    
           @Service public class UserServiceImpl implements UserService { } 
           @Repository public class UserDaoImpl implements UserDao { } getBean的默认名称是类名(头字母小写),如果想自定义,可以@Service(“***”)               这样来指定,这种bean默认是单例的,如果想改变,可以使用@Service(“beanName”) 
           @Scope(“prototype”)来改变。可以使用以下方式指定初始化方法和销毁方法(方法名任意): @PostConstruct public void init() { } 
24
3
分享到:
评论
6 楼 ludabing 2016-06-07  
[/color][color=yellow]
5 楼 wjs王结胜 2015-04-08  
4 楼 di1984HIT 2014-10-24  
不错,不错。。。
3 楼 luchonglin4 2014-06-05  
是不是在xml中  配置了base-package,还需要在类文件类头上加上@Component,spring才能扫描这个类?
2 楼 Evergreen1992 2013-07-18  
                  
1 楼 beidou566 2012-04-27  
目前没啥区别吧,都一样的吧,虽然spring可能有这样分的趋势。

相关推荐

Global site tag (gtag.js) - Google Analytics