SpringBoot注解大全

启动类注解

@Configuration:定义配置类,被注解的类内部包含有一个或多个被 @Bean 注解的方法

创新互联拥有一支富有激情的企业网站制作团队,在互联网网站建设行业深耕十多年,专业且经验丰富。十多年网站优化营销经验,我们已为超过千家中小企业提供了成都网站建设、成都做网站解决方案,按需定制设计,设计满意,售后服务无忧。所有客户皆提供一年免费网站维护!

@EnableAutoConfiguration:开启自动配置功能,自动根据导入的依赖来自动配置项目

@ComponentScan:该注解标识的类,会被 Spring 自动扫描并且装入bean容器

@SpringBootApplication = @Configuration+@EnableAutoConfiguration+@ComponentScan

请求注解

@RequestBody:将请求体中的 json 字符串绑定到相应的 Bean 上

@ResponseBoby:将返回的对象转换成 json 字符串返回

@Controller:标注该类时一个控制器

@RestController:@Controller + @ResponseBody,标注该类是一个控制器,但不能返回页面,只能返回 json

@RequestMapping:提供路由信息,负责 url 到 控制器具体函数的映射

@RequestParam:将 url 中的参数绑定到函数的变量中

@PathVariable:映射 url 绑定的占位符

@GetMapping = @RequestMapping(method = RequestMethod.GET)

@PostMapping = @RequestMapping(method = RequestMethod.POST)

@PutMapping = @RequestMapping(method = RequestMethod.PUT)

@DeleteMapping = @RequestMapping(method = RequestMethod.DELETE)

配置注解

@Import:用来导入其他配置类

@ImportResource:用来加载 xml 配置文件

@Autowired:自动导入依赖的 Bean

@Service:一般用于修饰 service 层的组件

@Repository:使用该注解可以确保 dao 或者 repositories 提供异常转译,这个注解修饰的类会被ComponetScan发现并配置,同时也不需要为它们提供XML配置项

@Bean:用 @Bean 标注方法等价于XML中配置的 Bean

@Value:注入properties/yml 配置的属性的值

@Inject:等价于默认的 @Autowired,只是没有 required 属性

@Component:泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注

@Bean:标注在方法上,将方法的返回对象交由 Spring 处理

@AutoWired:自动导入依赖的 Bean,byType 方式

@Qualifier:当有多个同一类型的 Bean 时,可以用 @Qualifier("name") 来指定,与 @Autowired 配合使用

JPA 注解

@Entity、@Table(name=""):表明这是一个实体类,这两个注解一般一块使用,但是如果表名和实体类名相同的话,@Table可以省略

@MappedSuperClass:用在确定是父类的entity上,父类的属性子类可以继承

@NoRepositoryBean:一般用作父类的 repository,有这个注解,spring不会去实例化该 repository

@Column:如果字段名与列名相同,则可以省略

@Id:表示该属性为主键

@GeneratedValue(strategy = GenerationType.SEQUENCE,generator = "repair_seq"):表示主键生成策略是sequence(可以为Auto、IDENTITY、native等,Auto表示可在多个数据库间切换),指定 sequence 的名字是repair_seq

@SequenceGeneretor(name = "repair_seq",sequenceName = "seq_repair",allocationSize = 1):name 为 sequence的名称,以便使用,sequenceName 为数据库的 sequence 名称,两个名称可以一致

@Transient:表示该属性并非一个到数据库表的字段的映射,ORM框架将忽略该属性,如果一个属性并非数据库表的字段映射,就务必将其标示为 @Transient ,否则,ORM框架默认其注解为@Basic

@Basic(fetch=FetchType.LAZY):标记可以指定实体属性的加载方式

@JsonIgnore:作用是 json 序列化时将 Bean 中的一些属性忽略掉,序列化和反序列化都受影响

@JoinColumn(name="loginId"):一对一,本表中指向另一个表的外键;一对多,另一个表指向本表的外键

@OneToOne、@OneToMany、@ManyToOne:对应 hibernate 配置文件中的一对一、一对多、多对一

全局异常处理

@ControllerAdvice:包含@Component,可以被扫描到,统一处理异常

@ExceptionHandler(Exception.class):用在方法上面表示遇到这个异常就执行以下方法


本文名称:SpringBoot注解大全
URL链接:http://azwzsj.com/article/pjjcpo.html