- 博客(5)
- 收藏
- 关注
转载 Seata源码—3.全局事务注解扫描器的初始化
AbstractAutoProxyCreator的wrapIfNecessary()方法,会通过子类GlobalTransactionScanner的getAdvicesAndAdvisorsForBean()方法,获取在GlobalTransactionScanner的wrapIfNecessary()方法中构建的拦截器(也就是全局事务注解的拦截器GlobalTransactionalInterceptor),然后创建传入的Bean的动态代理。很多开源框架的内核源码里的关键组件,都会定义成接口。
2025-07-05 16:55:07
40
转载 Java并发利器:CountDownLatch深度解析与实战应用
/ 1. countDown() - 计数器减1// 2. await() - 等待计数器变为0// 3. await(时间, 单位) - 超时等待// 4. getCount() - 获取当前计数值System.out.println("剩余计数: " + count);
2025-07-05 10:21:15
17
转载 使用MCP C# SDK开发MCP Server + Client
你知道USB-C吧?需要注意的是:这里我们MCP Server使用的是标准IO传输方式,因此指定TransportType为StdIo,同时指定command为MCP Server应用程序所在的exe的目录位置。有了它,AI模型就能像插上USB-C线一样,轻松连接到各种外部数据源和工具,变得更聪明、更实用。本文介绍了MCP的基本概念和工作模式,然后演示了如何通过MCP C# SDK创建MCP Server和Client,以及基于ASP.NET WebAPI创建SSE Server,相信会对你有所帮助。
2025-05-30 20:52:34
24
转载 Spring 中@Autowired,@Resource,@Inject 注解实现原理
是负责处理 Bean 的属性的自动注入的,那么它一定是在业务 Bean 创建之前就已经完成初始化了,这样在业务 Bean 创建的时候才能调用它的实例方法。是否有注册对应的实例,如果有则返回,它的使用场景一般是有用户自己的 new 的对象可以注册到这里面,然后在一个 Spring 管理的 Bean 中可以把它注入进来。否则再次尝试根据字段的名称匹配看是否有匹配的 Bean,如果有则返回;创建 Bean 的方法中触发调用的,在这个方法中的主要实现逻辑是。),然后看是否有名称匹配的 Bean,如果有则返回;
2025-05-04 05:47:31
53
转载 mysql数据库一些实用的东西
-------------------------------数据库的锁粒度篇---------------------------------------------首先我们有一张数据表,三个字段id,name,age,val。id 是主键,name 是索引,info 是普通字段,val是我们需要改动的字段。数据库引擎使...
2024-08-22 04:10:01
52
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅