会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
balala-39
博客园
首页
新随笔
联系
订阅
管理
2025年12月3日
Java 创建事务的方式
摘要: 1、使用声明式事务 @Transactional 注意,@Transactional 只回滚RuntimeException和Error,而Exception、IOException是不会回滚的。 所以为了所有异常都能正常回滚,一般会写为:@Transactional(rollbackFor = E
阅读全文
posted @ 2025-12-03 21:26 巴啦啦飞上天
阅读(2)
评论(0)
推荐(0)
2025年6月22日
@Qualifier、@Primary
摘要: 文章来自:https://felord.cn/spring-qualifier.html 以下是用于笔记记录。 使用@Autowired注解时可能会发生依赖注入冲突,比如当容器中有多个相同类型的Bean时,Spring不知道要注入哪个bean。 (1)@Autowired可以根据注入的变量名来寻找合
阅读全文
posted @ 2025-06-22 23:24 巴啦啦飞上天
阅读(26)
评论(0)
推荐(0)
2025年6月14日
@PostConstruct、@PreDestroy
摘要: 1、@PostConstruct @PostConstruct 用于表示一个方法,表示该方法在类实例化之后立刻执行。 通常标识在初始化方法上。 public class User { @PostConstruct public void init() { //在这里执行实例化后初始化操作 } } 图
阅读全文
posted @ 2025-06-14 16:12 巴啦啦飞上天
阅读(64)
评论(0)
推荐(0)
2025年6月2日
并发控制 - Semaphore(信号量)
摘要: Semaphore用来控制访问特定资源的线程数量。它通过协调各个线程来保证合理的公共资源的合理使用。 Semaphore用来保护一个或多个共享资源的访问。比如:多个厕所坑位的使用、多台打印机的使用。 Semaphore内部有一个计数器,其值是可以访问的公共资源的个数。 一个线程想要访问共享资源,首先
阅读全文
posted @ 2025-06-02 22:36 巴啦啦飞上天
阅读(18)
评论(0)
推荐(0)
2025年6月1日
索引可能会失效的场景
摘要: 1、最左前缀原则:要按照复合索引的顺序去查询,否则可能索引失效。例如联合索引(code, age, name),查询条件仅包含age和name。 2、范围查询截断后续索引:联合索引中有字段使用范围查询(如BETWEEN、>),其后的索引字段将失效。 3、在索引列上使用函数或表达式。 4、模糊查询左前
阅读全文
posted @ 2025-06-01 17:21 巴啦啦飞上天
阅读(28)
评论(0)
推荐(0)
2025年5月31日
排序字段出现重复 + 分页读出 引起的问题
摘要: 需求 将提交生成的待发放奖励记录发放出去,因为一个用户可能有多条奖励,而发放奖励时候需要对用户加悲观锁,所以本人先按用户ID对记录继续排序,然后再对单个用户批量发出奖励;但因奖励记录超过十万条,故对其分页读出。整体逻辑: 按用户ID排序分页读出1000条记录 -> 对单个用户批量发放奖励 遇到的问题
阅读全文
posted @ 2025-05-31 11:06 巴啦啦飞上天
阅读(15)
评论(0)
推荐(0)
2025年5月26日
Java反射
摘要: Java创建对象的方法 1、使用new关键字。 2、使用Clone的方法。无论何时调用一个对象的clone方法,JVM就会创建一个新的对象,将内容全部拷贝。 3、使用反序列化。当序列化和反序列化一个对象,JVM会创建一个单独的对象。 4、使用反射。 反射 1、反射是把Java类进行解剖,并把解剖后得
阅读全文
posted @ 2025-05-26 23:01 巴啦啦飞上天
阅读(10)
评论(0)
推荐(0)
代理知识
摘要: 代理模式 代理就是对目标方法的增强。 比如:在执行目标方法时,需要开启事务和提交事务这些动作,可以称其为增强动作。 那么把需要目标方法单独写一个目标类,把需要增强的动作单独写一个增强类,然后再写一个代理类用于把增强动作和目标方法结合起来。 这样就实现解耦合,即业务类只专注业务,其他的增强动作另外编写
阅读全文
posted @ 2025-05-26 00:29 巴啦啦飞上天
阅读(22)
评论(0)
推荐(0)
2025年5月25日
Java类的知识
摘要: 类加载器 通过IO流,把编译好的class字节码文件加载到内存里,即加载到JVM的运行时数据区的方法区里。 如果是本地磁盘的字节码文件,则用磁盘IO(InputStream、OutputStream、Reader、Writer等);若是网络传输过来的字节码文件,则用网络IO(Socket等)。 JV
阅读全文
posted @ 2025-05-25 23:40 巴啦啦飞上天
阅读(6)
评论(0)
推荐(0)
AOP学习
摘要: Java中,调用一个实例方法,首先得new对象,而new对象的前提是必须有对应的class字节码文件,且得通过类加载器把它加载到运行时数据区的方法区里。 ① 可通过 javac xx.java 编译字节码文件; ② 可通过 ASM (一款读写Java字节码的工具)来生成字节码文件。 SpringAO
阅读全文
posted @ 2025-05-25 22:37 巴啦啦飞上天
阅读(16)
评论(0)
推荐(0)
公告