SSM开发常用注解

一、spring中常用注解

1、IOC注解

@Component
可以使用此注解描述 Spring 中的 Bean,但它是一个泛化的概念,仅仅表示一个组件(Bean),并且可以作用在任何层次。使用时只需将该注解标注在相应类上即可。
属性:value:指定 bean 的 id。如果不指定 value 属性,默认 bean 的 id 是当前类的类名。首字母小写

@Repository
用于将数据访问层(DAO层)的类标识为 Spring 中的 Bean,其功能与@Component 相同。

@Service
通常作用在业务层(Service 层),用于将业务层的类标识为 Spring 中的 Bean,其功能与 @Component 相同。

@Controller
通常作用在控制层(如 Struts2 的 Action),用于将控制层的类标识为 Spring 中的 Bean,其功能与 @Component 相同。

@Autowired
用于对 Bean 的属性变量、属性的 Set 方法及构造函数进行标注,配合对应的注解处理器完成 Bean 的自动配置工作。默认按照 Bean 的类型进行装配。

@Resource
其作用与 Autowired 一样。其区别在于 @Autowired 默认按照 Bean 类型装配,而 @Resource 默认按照 Bean 实例名称进行装配。

@Qualifier
与 @Autowired 注解配合使用,会将默认的按 Bean 类型装配修改为按 Bean 的实例名称装配,Bean 的实例名称由 @Qualifier 注解的参数指定。

@Value
注入基本数据类型和 String 类型数据的

@Scope
指定 bean 的作用范围。一般不配置,采用默认的单例。

@Configuration
用于指定当前类是一个 spring 配置类,等价于bean.xml

@ComponentScan
用于指定 spring 在初始化容器时要扫描的包。 作用和在 spring 的 xml 配置文件中的:<context:component-scan base-package=“com.itheima”/>是一样的。
属性:basePackages:用于指定要扫描的包。

@Bean
该注解只能写在方法上,表明使用此方法创建一个对象,并且放入 spring 容器。

@PropertySource
用于加载.properties 文件中的配置。
属性:value[]:用于指定 properties 文件位置。如果是在类路径下,需要写上 classpath:

@Import
用于导入其他配置类

2、AOP注解

@Aspect
用于定义一个切面。

@Pointcut
用于定义切入点

@Before
用于定义前置通知,相当于 BeforeAdvice。

@AfterReturning
用于定义后置通知,相当于 AfterReturningAdvice。

@Around
用于定义环绕通知,相当于MethodInterceptor。

@AfterThrowing
用于定义抛出通知,相当于ThrowAdvice。

@After
用于定义最终final通知,不管是否异常,该通知都会执行。

@DeclareParents
用于定义引介通知,相当于IntroductionInterceptor。

@EnableTransactionManagement
纯注解开启事务的支持 ,等价于<tx:annotation-driven … />

3、事务注解

@Transactional
在service层使用此注解相当于配置了事务支持

@EnableTransactionManagement
纯注解使用 代表开启对注解事务的支持,等价于<tx:annotation-driven … />

二、spring mvc注解

@RequestMapping
用于建立请求 URL 和处理请求方法之间的对应关系。

GetMapping,PostMapping,DeleteMapping,PutMapping
分别对应get/post/delete/put 等http请求方式 ,如果请求方式不对,返回405状态码

@RequestParam
把请求中指定名称的参数给控制器中的形参赋值。
属性:
value: 请求参数中的名称。
required:请求参数中是否必须提供此参数。 默认值: true。表示必须提供,如果不提供将报错。

@RequestBody
用于获取请求体内容。直接使用得到是 key=value&key=value…结构的数据。
实现将 controller 方法返回对象转换为 json 响应给客户端。
get 请求方式不适用。
属性:required:是否必须有请求体。默认值是:true。当取值为 true 时,get 请求方式会报错。如果取值为 false, get 请求得到是 null。

@RestController
标识该类中的所有方法都返回json数据,方法上不需要再加ResponseBody;

@PathVaribale
用于绑定 url 中的占位符。
例如:请求 url 中 /delete/{id}, 这个{id}就是 url 占位符。
url 支持占位符是 spring3.0 之后加入的。是 springmvc 支持 rest 风格 URL 的一个重要标志。
属性:
value: 用于指定 url 中占位符名称。
required:是否必须提供占位符。

三、mybatis中常用注解

@Insert:实现新增
@Update:实现更新
@Delete:实现删除
@Select:实现查询
@Result:实现结果集封装
@Results:可以与@Result 一起使用,封装多个结果集
@ResultMap:实现引用@Results 定义的封装
@One:实现一对一结果集封装
@Many:实现一对多结果集封装
@CacheNamespace:实现注解二级缓存的使用

四、junit注解

@RunWith(SpringJUnit4ClassRunner.class)
替换junit里面的main方法(运行器)

@ContextConfiguration(classes= SpringConfiguration.class)
指定配置类

@ContextConfiguration(locations = “classpath:bean.xml”)
指定配置文件的路径

在这里插入图片描述

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值