springboot常用注解(整理方便以后翻阅)


servlet:https://www.zhihu.com/question/21416727
一,main函数层
1,@SpringBootApplication
主要由@ComponentScan,@EnableAutoConfiguration,@SpringBootConfiguration 组成
spring里有四大注解:@Service,@Repository,@Component,@Controller用来定义一个bean.@ComponentScan注解就是用来自动扫描被这些注解标识的类,最终生成ioc容器里的bean
@SpringBootConfiguration作用与@Configuration作用相同,都是用来声明当前类是一个配置类.可以通过@Bean注解生成IOC容器管理的bean.
@EnableAutoConfiguration是springboot实现自动化配置的核心注解,通过这个注解把spring应用所需的bean注入容器中  通过@Import注入了一个ImportSelector的实现类

2,@MapperScan
能够让别的类进行引用,再类上添加@Mapper注解
直接在Mapper类上面添加注解@Mapper,这种方式要求每一个mapper类都需要添加此注解,麻烦。在main中引入@MapperScan
@MapperScan("com.kfit.mapper")   扫描多个包  @MapperScan({"com.kfit.demo","com.kfit.user"})  

3,@ComponentScan
@ComponentScan用于类或接口上主要是指定扫描路径,spring会把指定路径下带有指定注解的类注册到IOC容器中
会被自动装配的注解包括@Controller、@Service、@Component、@Repository等等。
如果你有个类用@Controller注解标识了,那么,如果不加上@ComponentScan,自动扫描该controller,那么该Controller就不会被spring扫描到,更不会装入spring容器中,因此你配置的这个Controller也没有意义

4,@RestController
@RestController = @Controller + @ResponseBody
@ResponseBody的作用其实是将java对象转为json格式的数据

5,@Controller、@Service、@Component、@Repository
@Controller:控制层,用于标注控制层组件。
@Service:业务层,用于标注业务逻辑层主键。
@Repository:持久层,用于标注数据访问组件,即DAO组件。
@Component:当你不确定是属于哪一层的时候使用。

6,@RequestMapping 
在类的级别上的注解,会将一个特定请求或者请求模式映射到一个控制器之上
@RequestMapping(value = {"/hello", "/world", "/helloworld"})
@RequestMapping("/index")

7,@pathvariable ,@RequestParam ,@RequestBody  @Valid
@RequestParam接收的参数是来自HTTP请求体或请求url的QueryString中  一般用于get    作用:请求参数  content-type为application/x-www-form-urlencoded
@RequestBody接收的参数是来自requestBody中,即请求体  一般用于post   content-type一般为application/json
https://blog.csdn.net/weixin_38004638/article/details/99655322
@pathvariable 作用:路径变量。顾名思义,就是要获取一个url 地址中的一部分值
@Valid 验证参数 在相关的实体类的相关字段添加用于充当验证条件的注解  在controller层的方法的要校验的参数上添加@Valid注解

8,@Autowired
@Autowired 是一个注释,它可以对类成员变量、方法及构造函数进行标注,让 spring 完成 bean 自动装配的工作。
https://blog.csdn.net/meism5/article/details/90446789


9,spring Ioc 和 aop原理介绍
https://www.cnblogs.com/wmyskxz/p/8820371.html

10,如何在 Spring Boot 启动的时候运行一些特定的代码?
可以实现接口 ApplicationRunner 或者 CommandLineRunner,这两个接口实现方式一样,它们都只提供了一个 run 方法。

@Component
public class Supplement implements CommandLineRunner{
    @Override
    void run(String... args) throws Exception{
    
    };
}
 


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值