SpringBoot会用到那些注解
在面试中遇到这个问题好多次了,今天就来总结一下,将作用简单写了一下,以后补充
1、启动类
//指明为springBoot启动类
@SpringBootApplication
//使用缓存
@EnableCaching
//使用redis
@EnableRedisHttpSession
//服务注册发现
@EnableDiscoveryClient
@EnableFeignClients
//实体扫描
@EntityScan(basePackages = {"com.model"})
2、controller层
//跨域注解
@CrossOrigin(origins = {"*"})
//指明为controller层
@RestController
//指明路径
@RequestMapping(value = {"test"})
//参数类型为对象
@RequestBody
//参数类型为个体
@RequestParam
3、service层
//指明为service层
@Service
4、dao层
//指明为dao层
@Repository
//指明为修改操作
@Modifying
//事务注解
@Transactional
//sql写入
@Query
5、实体层
//lombok类,重写get、set、tostring、hashcode、equals、无参构造,全参构造
@Data
//指明为实体类
@Entity
//指定数据库表
@Table
//指定主键
@Id
//返回json类型
@JsonSerialize
//字段列属性
@Column
//将日期返回为json格式
@JsonFormat
5、注入类
//注入
@Autowired
//注入
@Resource
//指明组件,如果不知道确定的类,就写这个
@Component
//注入
@Bean
6、AOP
//指明aop类
@Aspect
//切点
@Pointcut
//前置通知
@Before
//后置通知
@After
//后置返回
@AfterReturning
//环绕通知
@Around
7、缓存类
//缓存配置
@CacheConfig
//缓存查询
@Cacheable
//缓存清除
@CachePut
//缓存清除
@CacheEvict
//缓存复杂组合
@Caching
8、配置类
//指明配置类
@Configuration
//日志
@Slf4j