加载中
JVM内存级分布式缓存Hazelcast

Hazelcast是一个内存分布式计算平台,用于管理数据并并行执行执行应用程序。 1. 它是用Java编写的。 2. 与其他一些内存数据库(如redis)不同,Hazelcast是多线程的,这意味着可从所有可用的C...

2019/07/10 11:05
4.3W
MyBatis数据库字段映射Java枚举

有时候我们需要将数据库的字段对Java的枚举类型进行映射,比如说我们有一个汽车配件类型的枚举 public enum ProductType implements Localisable { TYPE1("配件"), TYPE2("车品"); private S...

2019/07/09 16:15
1.4K
分库分表 vs NewSQL数据库

最近与同行科技交流,经常被问到分库分表与分布式数据库如何选择,网上也有很多关于中间件+传统关系数据库(分库分表)与NewSQL分布式数据库的文章,但有些观点与判断是我觉得是偏激的,脱离...

使用JDK的观察者接口进行消息推送

观察者模式就是对对象内部的变化进行观察,当发生改变时做出相应的响应。代码样例见 设计模式整理 ! 因为观察者模式较为重要,使用频率较高,JDK早已经提供了内置的观察者接口以及被观察者父...

2019/06/19 12:02
270
在Mybatis的collection标签中获取以,分隔的id字符串

有的时候我们把一个表的id以逗号(,)分隔的字符串形式放在另一个表里表示一种包含关系,当我们要查询出我们所需要的全部内容时,会在resultMap标签中使用collection标签来获取这样的一个集合...

2019/06/10 11:49
9.5K
Java函数式编程整理

Java函数式编程的第一个作用是可以将匿名类改写成函数式表达式,由系统自动判断类型 我们先定义一个接口 public interface Goods { boolean test(int i); } 传统的匿名类写法 public class A...

2019/05/29 20:07
1.3K
Guava RateLimiter限流源码解析和实例应用

在开发高并发系统时有三把利器用来保护系统:缓存、降级和限流 缓存 缓存的目的是提升系统访问速度和增大系统处理容量 降级 降级是当服务出现问题或者影响到核心流程时,需要暂时屏蔽掉,待高...

2019/05/26 21:26
6.6K
像Java SE一样编写Java EE(ddd探索)

今天主要改写昨天的组合模式成Web系统。 容器接口为 public interface TreeProduct { /** * 展示所有产品 * @return */ List<TreeProduct> allProducts(); /** * 增加......

组合模式在商品分类列表中的应用

在所有的树形结构中最适合的设计模式就是组合模式,我们看看常用商品分类中如何使用。 先定义一个树形结构的商品接口 public interface TreeProduct { List<TreeProduct> allProducts(); bo...

2019/05/21 00:32
330
Springboot2使用shardingsphere分表攻略

把一个实例中的多个数据库拆分到不同的实例 如果在数据库集群节点一承担的写压力无法承载,我们可以先该集群节点进行拆分,拆分后效果如右图所示 但如果拆分后,订单的节点一的写压力依然无法...

2019/05/19 02:25
1W
浅析克隆

创建对象的四大方法:1、new;2、反射;3、克隆;4、反序列化 今天来看一下如何克隆一个对象出来,克隆分为2种,一种是浅克隆,一种是深克隆。 一、在浅克隆中,如果原型对象的属性是值类型(...

2019/05/13 01:08
226
使用策略模式加标签来解决商品显示的一级分层

假设我们要在一个商品显示对象中放入商品对象的任何一个属性 商品显示类的定义如下 @Data public class ProductShow { private String title; } 商品类的定义如下 @AllArgsConstructor @Dat...

2019/05/11 04:12
405
使用Javassist来动态创建,修改和代理类

要使用Javassist,要先在POM中添加 <dependency> <groupId>javassist</groupId> <artifactId>javassist</artifactId> <version>3.3</version> </dependency> 我们先使用Javassist来动态创建一...

2019/05/10 12:04
1.4K
Springboot2添加mongodb连接池配置类

我们在配置mongodb的时候配置一个url连接就开始开发了,如 spring: data: mongodb: uri: mongodb://xxx.xxx.xxx.xxx:27017/test 但是这样非常容易断开,不适合生产环境使用。现在我们要给mon...

修改Springboot 2的默认Json解析器JackSon为FastJson

我们在Controller中如果传递的参数为对象的话,此时我们传递过来的Json串是使用SpringBoot的默认解析器来进行解析的,但是JackSon的体验并不是很好,我们可以修改成阿里的FastJson来获取更好...

雄爷的SpringMVC源码

直接上干货 public class DispatcherServlet extends HttpServlet { private Properties contextConfigProperties = new Properties(); private List<String> classNames = new ArrayList<>(...

2019/04/28 01:04
391
ddd中的子域和界限上下文

我们先来说说子域是什么?子域在我的理解是在一个庞大的系统中可以明显感知的不同的区块,如果在电商模块中,商品目录,订单,物流,库存,发票等等都可以感知他们明显的不同,可以认为是子域...

2019/04/23 17:00
666
Mybatis的结果集处理

此时我们已经可以把整段的SQL语句取出,但还并没有在数据库中去执行,我们可以先来分析一下配置文件中SQL语句执行后的结果集是如何处理的。 Mybatis会将结果集按照映射配置文件中定义的映射规...

2019/04/21 17:57
5.7K
浅析Mybatis的SqlSource

在之前的博文中我已经说了SqlSource接口的作用,以及StaticSqlSource,具体参考 Mybatis初始化的builder建造者模式 ,这里主要要说明一下SqlSource接口的另外两个实现类DynamicSqlSource,Ro...

2019/04/19 11:01
664
Mybatis中SqlNode的组合模式

组合( Composite )模式就是把对象组合成树形结构,以表示“部分-整体”的层次结构,用户可以像处理一个简单对象一样来处理一个复杂对象,从而使得调用者无需了解复杂元素的内部结构。 组合...

没有更多内容

加载失败,请刷新页面

返回顶部
顶部