springboot中注解的作用

@SpringBootApplication

`@SpringBootApplication` 是Spring Boot框架提供的一个组合注解,用于标注Spring Boot应用程序的入口类。它包含了以下三个注解的功能:
 1.  `@Configuration` :表明该类是一个配置类,可以定义一些Bean。
2.  `@EnableAutoConfiguration` :启用Spring Boot的自动配置机制,根据classpath中的jar包自动配置应用程序。
3.  `@ComponentScan` :自动扫描并加载符合条件的组件或Bean。
 通过使用 `@SpringBootApplication` 注解,可以简化Spring Boot应用程序的启动配置,避免手动配置大量的组件和依赖。同时,Spring Boot会自动扫描和加载应用程序中的组件和Bean,使得应用程序的开发变得更加高效和便捷。
 下面是一个示例,演示如何使用 `@SpringBootApplication` 注解:

@SpringBootApplication
public class MyApplication {
    public static void main(String[] args) {
        SpringApplication.run(MyApplication.class, args);
    }
}


在上述示例中, `MyApplication` 类是Spring Boot应用程序的入口类,使用了 `@SpringBootApplication` 注解标注。 `main` 方法中使用了 `SpringApplication.run` 方法启动了应用程序。

@Value

application.properties定义属性,直接使用@Value注入即可

public class A{
	 @Value("${push.start:0}")    如果缺失,默认值为0
     private Long  id;
}

@EnableAsync

`@EnableAsync` 注解是Spring框架提供的一个注解,用于启用异步方法的支持。
 在使用 `@EnableAsync` 注解后,Spring框架会自动创建一个线程池来执行被 `@Async` 注解修饰的方法。这样,在调用这些方法时,Spring会将其包装成一个异步任务,并提交给线程池进行执行,而不是阻塞当前线程等待方法执行完成。
  `@EnableAsync` 注解可以应用在配置类上,通过在配置类上添加该注解,可以全局启用异步方法的支持。同时,也可以在具体的方法上添加 `@Async` 注解,来指定该方法需要以异步方式执行。
 下面是一个示例,演示如何使用 `@EnableAsync` 注解:

@Configuration
@EnableAsync
public class AppConfig {
    // 配置类的其他内容
     @Bean
    public Executor taskExecutor() {
        ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
        executor.setCorePoolSize(10);
        executor.setMaxPoolSize(20);
        executor.setQueueCapacity(30);
        executor.setThreadNamePrefix("MyExecutor-");
        executor.initialize();
        return executor;
    }
}


在上述示例中, `AppConfig` 类是一个配置类,使用了 `@EnableAsync` 注解启用了异步方法的支持。同时,通过定义 `taskExecutor` 方法,创建了一个线程池来执行异步任务。
 使用 `@EnableAsync` 注解可以方便地在Spring应用中使用异步方法,提高应用的并发性和响应性。

@PathVariable

用来获得请求url中的动态参数

@Controller  
public class TestController {  

     @RequestMapping(value="/user/{userId}/roles/{roleId}",method = RequestMethod.GET)  
     public String getLogin(@PathVariable("userId") String userId,  
         @PathVariable("roleId") String roleId){
           
         System.out.println("User Id : " + userId);  
         System.out.println("Role Id : " + roleId);  
         return "hello";  
     
     }  
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值