Spring常用注解

1、@Controller

标注控制层,相当于structs中的action

2、@Service

标注业务逻辑处理层,实现接口

3、@Repository

标注数据访问层,即Dao层

4、@Component

把普通实体类实例化到spring容器中,相当于配置文件中的<bean id=""  class=“”/>,泛指各种组件,当我们的类不属于各种归类(不属于@Controller、@Service等)的时候,我们就可以使用@Component来标注这个类

<!--使用注解扫描组件,除注解为controller的-->
    <context:annotation-config />
    <context:component-scan base-package="com.test">
        <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller" />
    </context:component-scan>
<!--base-package表示为需要扫描的所有子包-->

被@Controller 、@Service、@Repository 、@Component 注解的类,这些类都会被纳入进spring容器中进行管理

5、@Lazy

@Lazy用于指定该类是否取消预初始化,即是否延迟加载该实体类。主要用于修饰Spring Bean类,用于指定该类的预初始化行为,使用该注解时可以指定一个boolean型的value属性,该属性决定是否要预初始化该Bean

  • lazy代表延时加载,lazy=false,代表不延时,如果对象A中还有对象B的引用,会在A的xml映射文件中配置b的对象引用,多对一或一对多,不延时代表查询出对象A的时候,会把B对象也查询出来放到A对象的引用中,A对象中的B对象是有值的。
  • lazy=true代表延时,查询A对象时,不会把B对象也查询出来,只会在用到A对象中B对象时才会去查询

没加注解之前主要容器启动就会实例化bean,加上@Lazy注解则会在第一次调用的时候实例化,@Lazy注解的作用主要是减少springIOC容器启动时的加载时间

6、@PostConstruct

在方法上加上该注解,项目会在启动的时候就执行该方法。本人用这个注解的时候是要写一个在项目启动后持续执行的线程,用来持续读取数据。(实现这个目的也可用监听器)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值