@RequestMapping |
用在类和方法上,用于类上表示父路径,如demo,方法上表示子路径,如demo1。访问路径为:demo/demo1 属性:params, headers, value, method, consumes, produces |
@PathVariable |
路径上的变量,用在参数前,路径上的变量名和参数名称一致 @RequestMapping("demo/demo1/{name}") public String say(@PathVariable String name){ } |
@RequestParam |
等价于下面代码 |
@RequestBody |
方法参数绑定到HTTP请求的Body上,前端需要用json提交。 @RequestMapping(value = "/something", method = RequestMethod.PUT) public void handle(@RequestBody String body,@RequestBody User user){ //可以绑定自定义的对象类型 } |
@ResponseBody |
表示输出的格式是json,用返回值填补HTTP的Body |
@Bean |
相当于xml里面配置<bean></bean>, 放在方法上面,而不是类,意思是产生一个bean并交给spring管理 |
@Autowired |
Spring的注释,可用于类的属性,构造器,方法进行注释 |
@Qualifier |
当有同一类型的Bean时,可以用@Qualifier("name")来指定。与@Autowired配合使用 |
@Resource |
java的注释,为目标bean指定协作者Bean,相当与Autowired,但是以名字方式注入,Autowired以类型方式注入(但是可以配合Qualifier使用,否则一个类多个对象会抛出异常)。 |
@Repository |
标注一个DAO组件类 |
@Service |
标注一个业务逻辑组件类,可以自定义Bean名称,但必须唯一。 |
@Controller |
标注一个控制器组件类 |
@Component |
可以替代@Repository、@Service、@Controller,因为三个注解都被@Component标注。被注解的java类当做Bean实例,Bean实例的名称默认是Bean类的首字母小写,其他不变。 |
@SpringBootApplication |
包含@Configuration、@EnableAutoConfiguration、@ComponentScan,通常用在启动类上。 |
@RestController |
@Controller和@ResponseBody的集合。并且将函数的返回值直接填入HTTP的响应体中,是REST风格的控制器。 |
@JsonBackReference |
解决嵌套外链接问题 |
@ComponentScan |
组件扫描。如果扫描到有@Component @Controller @Service等这些注解的类,则把这些类注册为bean。让springboot扫描到Configuration类,并把它加入到程序上下文。自动发现和装配Bean |
|
|
@Conditional |
用来标致一个spring bean或者configuration配置文件,当满足指定的条件才开启配置 |
@ConditionalOnBean |
组合@Conditional注解,当容器中有指定的Bean才开启配置。 |
@ConditionalOnMissingBean |
和上面的注解相反,当容器中没有指定的Bean才开启配置。 |
@ConditionalOnClass |
|
@ConditionalOnMissingClass |
组合@Conditional,两者为相反注解,当容器中没有/有指定class才开启配置。 |
@ConditionalOnWebApplication |
|
@ConditionalOnNotWebApplication |
同上,当前项目类型是或者不是web项目才开启配置。 |
@ConditionalOnProperty |
组合@Conditional注解,当指定的属性有指定的值时才开启配置。 |
@ConditionalOnJava |
当运行的java JVM在指定版本范围内时才开启配置 |
@ConditionalOnResource |
当类路径下有指定的资源才开启配置。 |
@COnditionalOnSingleCandidate |
当指定的class在容器中只有一个Bean,或者同时有多个但为首选时才开启配置。 |
|
|
@ConfigurationProperties |
用来加载额外的配置,用在@Configuration注解类或者@Bean注解方法上面。 |
@EnableConfigurationProperties |
配合@ConfigurationProperties注解使用,用来开启对@ConfigurationProperties注解配置Bean的支持。 |
@AutoConfigureAfter |
|
@AutoConfigureBefore |
表示该自动配置类需要在另外指定的自动配置类配置前/后配置 |
@Configuration |
指出该类是Bean配置的信息源,相当于XML中的<beans></beans>,一般加在主类上,配置文件里能做的事可以在注解下面的类做。 @Configuration是随容器启动开始加载的,始终存在的单例模式。 @Component是使用一次即实例化一次 |
|
|
@Profiles |
Spring Profiles提供了一种隔离应用程序配置的方式,并让这些配置只能在特定的环境下生效。 任何@Component或@Configuration都能被@Profile标记,从而限制加载它的时机。 @Configurationbr/>@Profile("prod") public class ProductionConfiguration { // ... } |
@Vaue |
注入application.properties配置的属性的值 @Value("${defaultPageNum}") private String message; |
@ImportResource |
有些通过类的注册方式配置不了的,可以使用这个注解指定xml文件,老的配置很管用 |
@Import: |
用来引入额外的一个或者多个 @Configuration 修饰的配置文件类. 多个配置类嵌套使用时有用。 |
@SpringBootConfiguration |
@Configuration的变体,作用一样。 |
@RequestHeader |
获取http请求头某个变量信息 |
@GetMapping |
get提交,参数在url中 |
@PostMapping |
post提交,参数在body中 |
@DeleteMapping |
delete提交,参数在url中 |
@PutMapping |
put提交,参数在url中,一般用于更新 |