一尘不染

用@Component注释类时,是否表示它是Spring Bean和Singleton?

spring

对Spring来说还很新,我有一个关于注释类的问题。用注释类时,@Component是否意味着该类将是Spring Bean,默认情况下是单例?


阅读 960

收藏
2020-04-19

共1个答案

一尘不染

是的,没错,是@ComponentSpring bean和Singleton。

如果类属于服务层你可能需要使用注释它@Service而不是

但是请记住,为了检测到这些批注,你需要将以下行放在applicationContext.xml

<context:component-scan base-package="com.yourcompany" />

关于单例-缺省情况下,spring bean都在单例范围内。你唯一需要记住的是你不应该将状态存储在字段变量中(它们应该仅包含依赖项)。因此,你的应用程序将是线程安全的,并且你不需要每次都需要一个新的bean实例。换句话说,你的bean是无状态的。

2020-04-19