
项目使用
文章平均质量分 54
\zihao
这个作者很懒,什么都没留下…
展开
-
@Transactional失效引发的spring事务相关
②在同一个类里,会导致事务失效,因为AOP是代理模式,需要注意的是失效的是被调用方法, 但是调用方事务不受影响,仍可加入。PROPAGATION_REQUIRED_NEW:创建自己新事务,当前有事务则挂起当前事务。PROPAGATION_REQUIRED默认:当前有事务加入当前事务,否则创建新事务。PROPAGATION_NESTED:使用嵌套事务,开启自己独立的事务。1、编程式事务管理(在代码中手动开始,提交,关闭事务)比较灵活。读未提交(脏读,可重复读,幻读,);读已提交(可重复读,幻读)原创 2025-01-14 16:17:36 · 183 阅读 · 0 评论 -
项目实战:controller层需要做的事
2,参数的校验处理(spring的validation,用@PathVariable 校验 @RequestParam 参数和用@Validated校验@RequestBody对象 )8,对于一些耗时较长的操作(如文件上传、异步任务等),可以在 Controller 层使用异步机制(如 @Async)来避免阻塞主线程,提高系统的响应速度和吞吐量。4,统一的返回值(data,code,message)(实现R<>对象类重载)3,接口传输数据进行加解密(AES,RES,RSA)使用过滤器(Filter)原创 2024-12-25 15:31:11 · 118 阅读 · 0 评论 -
项目实战:关于MyBatis-Plus使用LambdaQueryWrapper的查询
在 MyBatis-Plus 中,LambdaQueryWrapper 是一种常用的查询构造器,它基于 Lambda 表达式来构建查询条件。LambdaQueryWrapper 是 MyBatis-Plus 提供的强大查询工具,可以通过 Lambda 表达式构造类型安全的查询条件。提供了丰富的方法,支持常见的查询操作,如 eq(), like(), in(), orderBy() 等,减少了手动拼接 SQL 的复杂度。支持组合查询、排序、分组等复杂查询功能。选择需要查询的字段。用于分组和聚合查询。原创 2024-12-19 16:00:31 · 1028 阅读 · 0 评论 -
项目实战:关于Redis的使用
*1.缓存穿透:**是指缓存和数据库中都没有的数据,而用户不断发起请求,造成数据库的压力倍增的情况。例:发起为id值为-1的数据或id为特别大不存在的数据。解决方案:布隆过滤器(Bloom Filter)。/接口鉴权,添加校验/将查询不到的空数据存缓存中,设置过期时间很短(不推荐,内存压力大)** 2.缓存雪崩:**缓存服务器宕机或者大量缓存集中某个时间段失效,导致请求全部去到数据库,造成数据库压力倍增的情况,这个是针对多个key而言。原创 2024-12-19 14:58:25 · 546 阅读 · 0 评论