文章

ssm框架中注解的含义小结

ssm框架中注解的含义小结

组件扫描

什么是组件扫描??

指定一个包路径,Spring会自动扫描该包及其子包所有组件类,当发现组件类定义前有特定的注解标记时,就将该组件纳入到Spring容器。等价于原有XML配置中的定义功能。

组件扫描可以替代大量XML配置的定义。

在spring中,开启注解扫描后,替代xml配置bean,

<context:component-scan base-package = “org.example”/>

指定扫描类路径后,并不是该路径下所有组件类都扫描到Spring容器的,只有在组件类定义前面有以下注解标记时,才会扫描到Spring容器。

当一个组件在扫描过程中被检测到时,会生成一个默认id值,默认id为小写开头的类名。也可以在注解标记中自定义id。下面两个组件id名字分别是oracleUserDao和loginService

eg:

@Repository

public class OracleUserDao implements UserDao{

}

@Service(“loginService”)

public class UserService{}

通常受Spring管理的组件,默认作用域是“singleton”,如果需要改变作用域可以添加@Scope注解,并在注解中添加作用域名称

eg:

@Scope(“prototype”)

@Repository

public class OracleUserDao implements EmpDao{}

spring中@Scope注解共有一下几种:

```plain text singleton : 单例模式

1
2
3
4
5
6
7
prototype:每次请求都会new一个对象,

request 表示该针对每一次HTTP请求都会产生一个新的bean,同时该bean仅在当前HTTP request内有效

session作用域表示该针对每一次HTTP请求都会产生一个新的bean,同时该bean仅在当前HTTP session内有效

global session ```

http://www.cnblogs.com/qq78292959/p/3716827.html

本文由作者按照 CC BY 4.0 进行授权