SpringBoot 项目常用注解大全
1. @SpringBootApplication:组合注解,让springboot自动给程序进行必要的配置;包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解
2. @Mapper:在接口类上添加了@Mapper,在编译之后会生成相应的接口实现类
3. @MapperScan:同@Mapper作用,不过在Springboot启动类上面添加,指定要变成实现类的接口所在的包,然后包下面的所有接口在编译之后都会生成相应的实现类
4. @Insert/@Delete/@Select/@Update:sql注解,可直接在Dao/Mapper方法上写sql语句
5. @Param:参数注解
6. @Service:用于修饰service层的组件
7. @Resource/@Autowired:自动导入依赖的bean
区别:
@Resource 默认按照名称进行装配,通过name属性进行指定
@Autowired 默认按类型装配,也可以使用名称装配,配合@Qualifier注解
8. @Transactional:用于配置spring事务管理,要么都成功,要么都不成功
9. @Controller:用于定义控制器类,由控制器负责将用户发来的URL请求转发到对应的服务接口
10. @RequestMapping:负责URL到Controller中的具体函数的映射
11. @RequestParam:接受的参数来自requestHeader,并将参数赋值到被@RequestParam注解的变量上,可使用requet.getParameter(“”)获取
12. @RequestBody:将接收的json数据装载到实体类中
13. @ResponseBody:将方法的返回值通过合适的HttpMessageConverter转换成特定格式写入到response的body区域
14. @Configuation:用于定义配置类,可替换xml配置文件,相当于<Beans></Beans>
15. @Bean:主要用在@Configuration注解的类里,也可以用在@Component注解的类里,相当于<Bean></Bean>
16. @Value:注入SpringBoot中配置文件的属性值;@Value(“${}”)
17. @Component:把普通pojo实例化到spring容器中,相当于配置文件中的 <bean id="" class=""/>;泛指组件
18. @Scheduled:定时任务注解;cron表达式:[秒] [分] [小时] [日] [月] [周] [年]
每天零点:@Scheduled(cron="0 0 0 * * ? ")
每隔五分钟:@Scheduled(cron=“0 0/5 * * * ?”)
每月最后一天23点执行一次:@Scheduled(cron=“0 0 23 L * ?”)
每天的0点、6点、12点、18点都执行一次:@Scheduled(cron=“0 0 0,6,12,18 * * ?”)
说明:
*
表示所有值
?
表示不指定值
-
表示区间
,
表示指定多个值
/
用于递增触发;如在秒上面设置”5/15” 表示从5秒开始,每增15秒触发
L
表示最后的意思
W
表示离指定日期的最近那个工作日(周一至周五)
#
序号(表示每月的第几个周几),例如在周字段上设置”6#3”表示在每月的第三个周六