spring容器:
1.@ComponentScan("com.jt.demo3") 根据指定的包路径扫描注解,扫描当前包及其子孙包
2.@Configuration 标识当前类是配置类,其实就是配置文件
3.@Bean 标识该对象交给spring容器管理
4.@Scope 标识单例,多例(prototype多例,singleton单例)
5.@Lazy 懒加载,用户什么时候使用,对象什么时候创建,只能控制单例,多例都是懒加载
Bean的生命周期
6.@PostConstruct 初始化方法
7.@PreDestroy 销毁方法
8.@Component 将该类交给spring容器管理 map(key , value) 反射机制创建对象
DI依赖注入
9.@Autowired 可以将容器中对象进行注入
(1)按照类型注入:如果注入的类型是接口,则自动查找其实现类对象进行注入
一般spring框架内部的接口都是单实现,特殊条件下可以多实现
(2)按照名称注入:@Autowired + @Qualifier("dog")
10.@Qualifier 按照id进行注入
springMVC
11.@Repository/@Mapper Dao层/Maper层,主要与数据库进行交互,“持久层”
12.@Service Service层,主要实现后端的业务逻辑
13.@Controller Controller层,主要与页面进行交互
14.@Value 为属性赋值 @Value("${key}") ,读取配置文件的值:addUser.properties
15.@PropertySource
spring根据指定的路径,加载properties配置文件,数据添加到spring容器中
@PropertySource(value="classpath:/addUser.properties",encoding="UTF-8")
spring AOP
16.@Aspect 这是一个切面类 切面=切入点表达式+通知方法
17.@Pointcut 切入点表达式
18.@EnableAspectJAutoProxy 编辑配置类,让AOP机制生效
19.@Before
20.@AfterReturning
21.@AfterThrowing
22.@After
23.@Around
24.@Order(1)
25.@ResponseBody
26.@RequestMapping("/hello")
27.@PathVariable
28.@GetMapping("")
29.@DeleteMapping("")
30.@PostMapping("")
31.@PutMapping("")
32.@RestController
33.@CrossOrigin
34.@RequestBody
35.@Data
36.@Accessors
37.@NoArgsConstructor
38.@AllArgsConstructor
39.@Mapper
40.@SpringBootTest
41.@Param
42.@Alias
43.@MapperScan("com.winter.dao")
作用:指定要变成实现类的接口所在的包,然后包下面的所有接口在编译之后都会生成相应的实现类
使用位置:是在Springboot启动类上面添加,与@SpringBootApplicaion在一起
添加该注解后,com.winter.dao包下面的接口类,在编译之后都会生成相应的实现类
44.@Insert
45.@Update
46.@Delete
47.@Select
48.@Transactional
49.@RestControllerAdvice
50.@ExceptionHandler
第四阶段微服务
1.@LoadBalanced
描述RestTemplate对象,用于告诉Spring框架,在使用RestTemplate进行服务调用时,这个调用过程会被一个拦截器进行拦截,然后在拦截器内部启动负载均衡策略。
2.@EnableFeignClients
注解用于描述配置类,告诉系统底层,在服务启动时,扫描使用@FeignClient注解描述的接口,并为这些接口创建实现类对象(代理对象),然后再这样的对象内部,可以进行远程服务调用
3.@FeignClient(“sca-provider”)
声明要调用的服务
4.@RefreshScope
配置中心的相关配置发生变化以后,能够及时看到类中属性值的更新
5.@Slf4j
为类创建一个log对象
前提是父工程添加lombak依赖
private static final Logger log=LoggerFactory.getLogger(ProviderCacheController.class);