Spring常用注解
-
@Autowired:注入一个 bean,可以通过byTYPE。
-
@Resource:注入一个 bean,可以通过byNAME。
-
@Required:注入 bean 时,要求 bean 不能为 null,否则抛出 BeanInitializationException。
-
@Bean:手动创建一个 Spring bean。
-
@ComponentScan:扫描指定包下的所有 Spring 组件。
-
@Constroller:通常作用在控制层,是一个泛化的概念,标注让spring容器来识别和管理组件。
-
@Service:通常标注在业务类上,交给spring容器管理。
@Component:让spring容器来识别和管理组件。
在各层的细化:
dao层: @Repository
service层 @Service
controller层 @Controller -
@Configuration:指出该类是 Bean 配置的信息源,相当于XML中的,一般加在主类上。
jpa常用注解
- @Column:如果字段名与列名相同,则可以省略。
- @Id:表示该属性为主键。
- @OneToOne、@OneToMany、@ManyToOne:对应hibernate配置文件中的一对一,一对多,多对一。
- @Entity:@Table(name=”“):表明这是一个实体类。一般用于jpa这两个注解一般一块使用,但是如果表名和实体类名相同的话,@Table可以省略
Spring mvc常用注解
- @RequestMapping("/path"):表示该控制器处理所有“/path”的UR L请求。RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。
- @RequestParam:用在方法的参数前面,自动获取请求参数里的值。
- @RequestBody:允许request的参数在request体中,而不是在直接连接的地址后面。
- @ResponseBody:支持将返回值放到response内,而不是一个页面,通常用户返回json数据
- @RestController:该注解为一个组合注解,相当于@Controller和@ResponseBody的组合,注解在类上,意味着,该Controller的所有方法都默认加上了@ResponseBody。
- @ControllerAdvice:全局异常处理、全局数据绑定、全局数据预处理
异常常用注解
- @ExceptionHandler(Exception.class):用在方法上面表示遇到这个异常就执行以下方法。