
spring
我没有在划水
365^1.01
展开
-
利用设计模式优雅地消除业务代码中大量的if/else和重复逻辑
目录前言业务场景解决方案1解决方案2前言if…else…绝对是我们日常编码中用到最多的,但是过多的使用,会导致我们代码可读性极差,并且一点也不美观。但是在一些场景下,我们可以使用设计模式来进行优化,让你的业务代码不仅优雅简洁,而且可扩展性极强。业务场景我们先来说一个业务场景:假如你在对接三方支付,这时候可能有支付宝、微信、银联三个产品需要对接,你需要根据用户选择交易类型来使用具体的三方平台。解决方案1大多数人的想法可能会很直接:if("微信".equals(type)){// 执行微信相原创 2020-12-13 00:07:52 · 4885 阅读 · 0 评论 -
从源码的角度来解读spring整合mybatis
目录1、前言2、mybatis2.1 mybatis使用流程2.2 mybatis三个组件2.3 SqlSession3、spring整合mybatis3.1 SqlSessionFactoryBean3.3 SqlsessionTemplate3.3 MapperFactoryBean3.4 配置mapperScan1、前言spring整合mybatis几乎是每个Java开发学习过程中都会接触到的,相信很多人开始学习的时候都和博主一样,跟着视频或者博客把一大堆配置复制粘贴下来,然后运行发现没问题,于原创 2020-11-02 18:00:10 · 330 阅读 · 2 评论 -
Spring事务隔离级别与MySQL设置的级别不一样怎么办
目录1、前言2、验证结论3、总结1、前言事务的四个隔离级别想必大家都已经清楚,但是在学习Spring的时候,我们发现Spring自己也有四个隔离级别(加上默认的是五个)。那么问题来了,当Spring设置的隔离级别和我们在数据库设置的隔离级别不一致时,哪个会生效?先抛出结论:Spring设置的隔离级别会生效2、验证结论要验证结论很简单,我们只需要在spring事务注解上面配置不同的隔离级别就行了:DAO层实现类的两个方法pay方法是模拟事务A先查询一次数据,然后休眠两秒再查询一次数据原创 2020-10-12 17:47:23 · 2415 阅读 · 0 评论 -
Spring5源码精讲(一):5.0.x源码环境构建
目录前言作案工具源码下载开始构建前言自从spring5使用gradle构建之后,对于大部分maven党来说,搭建源码环境简直就是噩梦。网上的教程也有着各种各样的坑,因此在这里特意花时间整理了一下自己基于IDEA构建spring5源码环境,让广大群众能够不踩坑。作案工具构建源码环境之前先说明一下工具版本,尽量保持一致能够避免踩坑:gradle 4.9jdk1.8_211uIDEA 2020.1spring 5.0.x什么?你问我gradle怎么安装?自己去百度源码下载gayhub上面原创 2020-09-04 10:10:02 · 2069 阅读 · 1 评论