- 博客(8)
- 收藏
- 关注
原创 试试用jdk8的Function函数来写模版模式吧
jdk8的Function函数是真的香,把方法分装成参数进行传递,凭借这个特性来代替原来写模版方法的方式.(只兼容jdk8以上版本) 原来我们为了抽象出具体执行方法而写模版方法,首先要定义一个接口 public interface TestTemplate { Object process(Object object); } 在去写调用模版方法的代码 public class Test { public void runTemplate(TestTemplate testTemplat
2020-06-25 23:45:31
571
原创 javassist入门
之前看dubbo 里面使用javassis代替反射来调用远程请求要调用的方法 这边 写个小demo 文档教程地址 https://github.com/jboss-javassist/javassist.wiki.git public class Test { public static void main(String[] args) throws NotFoundException...
2020-03-17 22:50:31
419
原创 关于spring中内嵌方法调用事物失效的情况
之前看到一个oppo面试题, 大概问的是 A方法有事务 内嵌调用B方法 B方法没事务注解 请问 这个情况下 事务的一个状态是什么 其实 这个我感觉 就是在问 spring中代理对象的使用关系 下面这个代码是面试题的描述 @Service public class TestService { @Transactional(rollbackFor = Exception.class) ...
2020-03-16 21:34:14
444
原创 模拟springcloud微服务调用
分布式服务框架目前市面上用的最多的估计就是上面两个框架,dubbo与springcloud 关于这两个框架的对比 我个人跟认为 dubbo是远程服务调用框架 springcloud更是微服务框架 从性能上来说 dubbo性能更好 但是本身的功能有限 springcloud 是提供了一整套微服务的框架 除了远程服务调用 还有网关 调用链追踪 配置中心等 并且 springcloud提供的外部服...
2020-03-14 16:45:21
214
原创 关于mybatis spring与dubbo是怎么通过一个接口 你就能调用到一个bean方法的讲解
Mybatis 或者 dubbo 或者 feign 这些 东西 都是 你定义一个接口 然后就能 使用一个具体的bean(对象) 那么 你完全没有做任何事情(你的业务代码) 那是怎么去根据你定义的接口 你还能 依赖注入一个bean进去 还能调用的呢 面试的时候 一般 问 都是 一概而论的说一句 生成一个代理对象 那是怎么生成的呢 这一点 我今天记录一下 首先要弄清楚 spring的加载与生成be...
2020-03-12 19:21:15
159
原创 为啥要用java interrupt
那天 下班 我跟 我的 leader 一起闲聊到 interrupt 他说为什么不用 一个 变量去处理呢 于是 我把这个代码 模拟了出来 这里 我郁闷了 咋停止了呢 明明 当前的 这个变量 是不可见的哇 我郁闷两分钟 后来到 println 方法里面去看 带锁 所以 导致 具有可见性 (这里 也知道 项目里面 可别用这个 危险的很) 于是 我把代码换成了下面的 嗯 模拟出来了 首...
2020-03-03 21:43:59
218
原创 分布式事物 seata框架的学习 第二章 (源码解析(server端))
之前 看过了 tm端的 AT模式的 事物的开始 commit 与rollback 的代码 接下来 看看 这些请求的下一个要去的地方 server。这个是用来决定 事务 到底是执行 commit 还是 rollback 的东东 同时还会记录 undo日志(数据操作前的原始数据) 先从 第一个接口 事务开启说起 可以看到是一个抽象的方法 看看他的实现类 可以看到只有一个 实现类 是 Defaul...
2020-03-03 20:35:36
359
原创 分布式事物 seata框架的学习 第一章 (GlobalTransactional注解源码解析(tm端))
GlobalTransactional 注解 这个全局注解 会被spring aop切入 下面看spring 对他做了什么 看到有一个interceptor 应该是 这个注解的代理 这个类实现了两个接口 ConfigurationChangeListener, MethodInterceptor 第一个 是 配置的监听 先不看 另一个 是springaop的接口 看到invoke方法 这个方...
2020-03-01 19:08:40
9350
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人