SpringBoot 小结

文章目录

  • 1 注解
    • 1.1 创建对象的注解
      • 1.1.1 @Controller
      • 1.1.2 @RestController
      • 1.1.3 @Service
      • 1.1.4 @Repository
      • 1.1.5 @Component
    • 1.2 赋值类的注解
      • 1.2.1 @Value
      • 1.2.2 @Autowired
      • 1.2.3 @Qualifier
      • 1.2.4 @Resource
    • 1.3 数据库相关注解
      • 1.3.1 @Transactional
      • 1.3.2 @Mapper
      • 1.3.3 @MapperScan
      • 1.3.4 @Param
    • 1.4 SpringBoot相关注解
      • @SpringBootApplication
    • 1.5 Dubbo相关
    • 1.6 其他的注解
      • 1.3.1 @Configuration
      • 1.3.2 @Bean
      • 1.3.3 @ImportResource
      • 1.3.4 @PropertySource
      • 1.3.5 @ResponseBody和@RequestBody
      • 1.3.6 @ControllerAdvice和@ExceptionHandler

1 注解

1.1 创建对象的注解

1.1.1 @Controller

放在类上面,创建Controller对象,注入到容器中。

1.1.2 @RestController

复合注解。@Controller和@ResponseBody的组合。

1.1.3 @Service

放在业务层实现类上面,创建Service对象,注入到容器。

1.1.4 @Repository

放在dao层的实现类上面,创建dao对象。
使用mybatis框架的时候,dao对象有mybatis通过代理生成,所以就用不到这个注解。

1.1.5 @Component

放在类上面,创建类对象,并注入到容器中。

1.2 赋值类的注解

1.2.1 @Value

简单类型赋值。

@Value("lisi")
private String name;

可以用来获取配置文件中的数据

@Value("${server.port}")
private Integer port;

1.2.2 @Autowired

引用类型自动注入,支持byName,byType,默认是byType方式。
放在属性上面,也可以放在构造方法上面,推荐放在构造方法上面。

1.2.3 @Qualifier

byName方式给引用类型赋值。
@Autowired和@Qualifier都由Spring框架提供。

1.2.4 @Resource

jdk中声明的注解。默认是byName,如果byName失败,再使用byType

1.3 数据库相关注解

1.3.1 @Transactional

放在Service实现类的public方法上面,表示此方法有事务

1.3.2 @Mapper

放在类上面,让mybatis找到接口,创建代理对象

1.3.3 @MapperScan

放在启动类上面,指定扫描的包,为这个包中的所有接口都创建代理对象。

1.3.4 @Param

放在dao接口方法的形参前面,作为命名参数使用。

1.4 SpringBoot相关注解

@SpringBootApplication

放在启动类上面

1.5 Dubbo相关

@DubboService:在提供者端使用,暴露服务,放在接口实现类上面
@DubboReference:在消费者端使用,应用远程服务,放在属性上面。
@EnableDubbo:放在启动类上面,表示当前应用启动dubbo服务。

1.6 其他的注解

1.3.1 @Configuration

放在类上面,表示配置类,相当于xml配置文件。

1.3.2 @Bean

放在方法上面,把方法的返回值对象注入到Spring容器中。

1.3.3 @ImportResource

加载其他xml文件配置,把文件中的对象注入到容器中。

1.3.4 @PropertySource

读取其他的properties属性配置文件。

1.3.5 @ResponseBody和@RequestBody

@ResponseBody:放在方法上面,表示方法的返回值是数据,不是视图
@RequestBody:把请求体中的数据,读取出来,转为java对象使用。

1.3.6 @ControllerAdvice和@ExceptionHandler

@ControllerAdvice:控制器增强,放在类上面,此类提供了方法可以对controller进行功能增强。
@ExceptionHandler:异常处理,放在方法的上面。

你可能感兴趣的:(Spring全家桶之路,spring,boot,mybatis,java)