MyBatis 常用注解
注解 | 目标 | 描述 |
---|---|---|
@Arg | 方法 | 单独的构造方法参数,是 @ConstructorArgs 集合的一部分 |
@CacheNamespace | 类 | 为给定的命名空间 (比如类) 配置缓存 |
@CacheNamespaceRef | 类 | 参照另外一个命名空间的缓存来使用 |
@Case | 方法 | 单独实例的值和它对应的映射 |
@ConstructorArgs | 方法 | 收集一组结果传递给对象构造方法 |
@Insert @Update @Delete | 方法 | 这些注解中的每一个代表了执行的真实SQL 。他们都使用字符串数 组(或单独的字符串)。如果传递的是字符串数组,则它们由分隔 它们的单独空间串联起来 |
@InsertProvider @UpdateProvider @DeleteProvider | 方法 | 这些可选的 SQL 注解允许指定一个类名和一个方法在执行时返回运 行的 SQL。基于执行的映射语句,MyBatis 会实例化这个类,然后执 行由 provider 指定的方法。这个方法可以选择性地接受参数对象作为 它的唯一参数,但是必须只指定该参数或者没有参数 |
@Many | 方法 | 复杂类型的集合属性映射 |
@One | 方法 | 复杂类型的单独属性值映射 |
@Options | 方法 | 这个注解提供访问交换和配置选项,通常在映射语句上作为属性出 现,而不是将每条语句注解变复杂 |
@Param | 参数 | 当映射器方法需要多个参数时,这个注解可以应用于映射器方法来给 每个参数一个名字,否则,多参数将会以它们的顺序位置来命名。比 如#{1}、#{2}等,这是默认的。若使用 @Param(“person”),SQL中的 参数应该被命名为 #{person} |
@Result | 方法 | 在列和属性或字段之间的单独结果映射 |
@Results | 方法 | 结果映射的列表,包含了一个特别结果列如何被映射到属性或字段 的详情 |
@TypeDiscriminator | 方法 | 一组实例化,用来决定结果映射的表现 |
Spring 和 Spring MVC 常用注解
注解 | 目标 | 描述 |
---|---|---|
@After | 方法 | 定义最终增强 |
@AfterReturning | 方法 | 定义后置增强 |
@AfterThrowing | 方法 | 定义异常抛出增强 |
@Around | 方法 | 定义环绕增强 |
@Aspect | 类 | 定义切面 |
@Autowired | 属性或方法 | 实现Bean 的装配,默认按类型装配 |
@Before | 方法 | 定义前置增强 |
@Cacheable | 方法 | 声明一个方法的返回值应该被缓存 |
@CacheFlush | 方法 | 声明一个方法是清空缓存的触发器 |
@Component | 类 | 被此注解标注的类都将由Spring 容器进行管理,可以标注 DAO、 Service 和 Controller 等类 |
@Controller | 类 | 用于标注控制器类 |
@ControllerAdvice | 类 | 被此注解标注的@ExceptionHandler、@InitBinder 和@ModelAttributes 方法收集到一个类中,并应用到所有控制器上 |
@CateTimeFormat | 属性 | 可以用来格式化 java.util.Date、java.util.Calendar 和java.util.Long类型 |
@ExceptionHandler | 方法 | 配置在局部异常处理时定义异常处理 |
@InitBinder | 方法 | 添加自定义编译器 |
@ModelAttribute | 参数或方法 | 用到参数上,表面此参数的值来源于模型中的某个属性;用到方法 上,表面此方法会在控制器的每个方法执行前被执行 |
@NumberFormat | 属性 | 可以用来格式化任何数字类型 (如int,long)或 java.lang.Number的 实例 (如 BigDecimal,Integer) |
@Path Variable | 参数 | 可以将 URL 中的 {xxx}占位符参数绑定到控制器处理方法的入参中 |
@Pointcut | 方法 | 定义切入点表达式 |
@PostConstruct | 方法 | 被此注解标注的方法会在Bean 初始化之后被 Spring 容器执行 |
@PreDestroy | 方法 | 被此注解标注的方法会在Bean 销毁之前被 Spring 容器执行 |
@Qualifier | 属性或方法 | 使用 @Autowired 时,如果找到多个同一类型的Bean,则会抛出异 常,此时可以使用 @Qualifer(beanName") 明确指定 Bean 的名称进 行注入 |
@Repository | 类 | 用于标注 DAO 类 |
@RequestMapping | 类或方法 | 定义控制器方法和 URL 的映射关系 |
@RequestParam | 参数 | 指定被标注的方法入参和 URL 请求的参数的对应关系 |
@Required | 方法 | 用于检查特定的属性是否设置,如果没有设置则抛出异常 |
@Resource | 属性或方法 | 实现 Bean 的装配,默认按名称装配 |
@ResponseBody | 方法 | 讲标注该注解的处理方法的返回结果直接写入 HTTPResponse Body中 |
@Scope | 类 | 定义一个类的作用范围 |
@Service | 类 | 用于标注业务类 |
@SessionAttributes | 类 | 使模型中的书存储一份到 session 域中 |
@Transactional | 类或方法 | 为类会方法添加事务处理 |