Spring 随笔 注解

0. 填坑了

ajax携带Json对象,请求参数被构造成另一种格式_1
ajax携带Json对象,请求参数被构造成另一种格式_2

1.controller

@RequestBody 
	请求体(载荷payload)
	作用在请求参数的一个需要被映射的对象或Map上
	基于json配置与key同名的对象属性
	content-Type为application/json
	只有一个
@ResponseBody
	作用在请求方法上
	将返回结果作为响应体
@ResquestHeader
	同上
@RestController
	作用在Class
	使得该类的所有请求返回json(相当于群体@ResponseBody)		
@RequestParam
	路径携带的参数
	可以有多个
	常用通过其required属性,自动校验非法的空值
@RequestMapping
	如果不指定method属性,那么默认接收所有的请求方式

@CrossOrigin
	跨域
	注解在方法、控制器上

2.bean

@Autowired
如何解决同接口实现类的注入 -> 借助 @Qualifier(“beanId”)
@Resource
如何解决同接口实现类/同名接口实现类的注入 -> @Resource(type=xxx.class)

@ControllerAdvice + @ExceptionHandler 异常处理

@ExceptionHandler
	@Controller中处理局部异常
	@ControllerAdvice中处理全局异常

@Scope
springIoc容器中的作用域

作用域描述
singleton单例模式全局有且仅有一个实例,但是如果实例中有非静态变量时,会导致线程安全问题,共享资源的竞争
prototype原型模式每次获取Bean的时候会有一个新的实例,当请求数越多,性能会降低,因为创建的实例,导致GC频繁
requestrequest表示该针对每一次HTTP请求都会产生一个新的bean,同时该bean仅在当前HTTP request内有效
sessionsession作用域表示该针对每一次HTTP请求都会产生一个新的bean,同时该bean仅在当前HTTP session内有效
globalsessionglobal session作用域类似于标准的HTTP Session作用域,不过它仅仅在基于portlet的web应用中才有意义

@Lazy
spring懒加载使用
@lazy注解处理循环注入问题 和彻底理解循环依赖底层原理

@Lookup
注入多例bean
gitee simple code

3. 事务

@Transactional
透彻的掌握 Spring 中@transactional 的使用
@Transactional注解的属性说明
@Transactional改用AspectJ解决事务自调用问题
StackOverFlow => warning javax.* types are not being woven because the weaver option ‘-Xset:weaveJavaxPackages=true’ has not been specified
StackOverFlow => AspectJ: Error can’t determine superclass of missing type
解决事务自调用问题方案二:AopContext.currentProxy()

@Cacheable
Spring cache简介&使用
Spring cache 指定KeyGenerator_1
Spring cache 指定KeyGenerator_2

@Retry
Spring Retry使用总结

@Async
@Async是基于AOP实现的(也就是代理)

4. 配置类

@ComponentScan
404 很可能是basePackages覆盖原来的扫包路径(启动类及其下级)

@Bean
@Import & ImportSelector
@Conditional_1
@Conditional_2
@ConfigurationProperties 读取配置

@Primary使用
@Primary处理多数据源

spring factories文件

手写一个springboot的自动配置
手写一个springboot的starter

5. 事件

@EventListener
Spring 事件&监听

6. 测试

junit4 & junit5
junit5

JUnit5+Mock

7. 遇到的问题

property path is neither an array nor a List nor a Map
	get请求不要使用ajax传输json
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

肯尼思布赖恩埃德蒙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值