随笔分类 - Java
摘要:网络上能搜索到的资料里,关于Java到底是值传递还是引用传递的讨论是比较多的,也没有一个特别被大家认可的结论。 因为最近一两年转到了Golang的开发,接触到了比较多的指针的玩法,突然对Java的引用传递和值传递又有了一定的兴趣。 但是我无意于讨论Java到底是值传递还是引用传递,我只是记录一下,避
阅读全文
摘要:1. 建造者模式可以解决什么问题 我家里有各种形状的瓷器,盘子或者碗。虽然形状不同,但是所用的材料基本上是一样的,比如土、水、釉、彩这些基本的东西。 但是做不同款式的瓷器,方法是不同的。假如说我现在已经写好了一段代码来生成白瓷碗和白瓷盘,正常运行起来了,这倒也没什么,可是,如果我现在要增加一个工作,
阅读全文
摘要:问题的提出 阅读别人代码的时候最讨厌遇到的就是大段大段的if-else分支语句,一般来说读到下面的时候就忘了上面在判断什么了。很多资料上都会讲到使用策略模式来改进这种代码逻辑。 策略模式的类图如下: 只需要按照这个图写代码就可以了。 策略模式代码的实现 借助Spring框架我们能够轻松的实现策略模式
阅读全文
摘要:1. 进行List类型转换 我们常会遇到这样一种问题,就是遍历List,将A中的某个元素赋给B,形成一个List。传统的编码方式应该是这样的: List<S1> s1List = Stream.of(new S1("1", "Lee"), new S1("2", "Wang")).collect(C
阅读全文
摘要:在之前的文章中我详细描述了如何利用ShardingSphere JDBC进行分库分表,同时也实现了简单的精确分库算法接口,详情见下面的链接: "利用ShardingSphere JDBC实现分库分表" 但是观察一下配置文件,我现在只有两张表的情况下就已经用了60行来做配置,如果说我在一个真实的系统中
阅读全文
摘要:利用ShardingSphere JDBC实现分库分表 1. ShardingSphere概述 1.1 概述 业务发展到一定程度,分库分表是一种必然的要求,分库可以实现资源隔离,分表则可以降低单表数据量,提高访问效率。 分库分表的技术方案,很久以来都有两种理念: 集中式的Proxy,实现MySQL客
阅读全文
摘要:1. Spring Boot简介 初次接触Spring的时候,我感觉这是一个很难接触的框架,因为其庞杂的配置文件,我最不喜欢的就是xml文件,这种文件的可读性很不好。所以很久以来我的Spring学习都是出于停滞状态的。 不过这种状态在我接触了Spring Boot之后,就发生了改变。Spring官方
阅读全文
摘要:原创内容,转载请注明出处 http://www.cnblogs.com/wingsless/p/6803542.html 现象描述 测试中发现,服务A在得到了服务B的注册用户成功response以后,开始调用查询用户信息接口,却发现无法查询出任何结果。检查binlog发现,在查询请求之前,数据库确实
阅读全文
摘要:起因 bonecp不具备回缩功能,即连接池持有连接之后,不会主动去释放这些连接(即使这些连接始终处于空闲状态),因此在使用一段时间之后,连接池会达到配置的最大值。 这种方式一定程度上造成了资源的浪费。 改造 参考tomcat jdbc的策略,每隔一段时间(可配置)会启动定时任务扫描partition
阅读全文
摘要:转载请标明链接:http://www.cnblogs.com/wingsless/p/6349434.html boneCP连接的实现 boneCP自己实现了标准的java.sql.Connection接口,除了会持有Connection对象之外,还会拥有一些属性用于标记连接的创建时间,空闲时间等。
阅读全文
摘要:转载请注明源链接:http://www.cnblogs.com/wingsless/p/6188659.html boneCP是一款关注高性能的数据库连接池产品 "github主页" 。 不过最近作者好像没有心思更新了,因为他发现了一款更快的连接池产品,但是这不影响我学习它。 连接的生存时间 MyS
阅读全文
摘要:观察者模式说起来很简单,就是一个订报纸的模式。但是实际上这部分我觉得还是很有意思的,《Head First设计模式》里还有一些还没看完,也是因为理解的不够深吧。 观察者模式会包含两个组件:观察者和主题。 这段代码是主题的接口: package obeserver; public interface
阅读全文
摘要:最近一直在看《Head First设计模式》,这本书写的确实是很不错的,专注于怎么用最简单的方式最通俗的语言让人了解设计模式。据说GoF的设计模式那本书写的很好,是一本经典,但是就是难懂,这本书应该就是我们这些一看经典书就困的人的宝贝了。 不过Head First系列并不专注于写代码,我就把自己学习
阅读全文
摘要:我想在我的系统上没事儿搞搞安卓开发,练习练习。于是我需要下载一些SDK,下面把今天做的事情记录一下,以后应该能用上。 首先是下载ADT,这个链接在这里:http://developer.android.com/sdk/index.html#ExistingIDE。有各种各样的版本可以下载,我用的是ubuntu12.04 x64,下载linux版本就可以了。这个zip包里会有eclipse,所以不需要麻烦的再下载eclipse的插件了。 下载以后解压到一个目录下即可,这里面会有两个目录,sdk和eclipse,就用这个eclipse就可以了。打开以后可能会报错,说找不到adb,go...
阅读全文
摘要:我希望用程序生成一些测试数据,测试一下开源数据库中哪个比较适合我们的数据仓库项目,于是有了这篇随笔。 其实测试数据可以用过程生成,但是我想学学java因此决定用程序实现。而且我先在把windows这个让我一打开电脑就想娱乐的系统卸载了,现在纯Ubuntu。 先记录下Java的配置: 首先需要下载Java,这是一个很简单的过程,链接在这里:http://www.oracle.com/technetwork/java/javase/downloads/index.html。我的是64位系统,因此选择了64位的gz包。下载好以后随便解压到哪个目录底下都是可以的。然后只需要配置这么几个环境变量...
阅读全文