一杯甜酒

用勇气改变可以改变的事情,用胸怀接受不可以改变的事情,然后用智慧分辨两者的不同!...

Java基础学习总结(128)——List去重3种方式及性能比较

package com.zhy.common.util;import static org.hamcrest.CoreMatchers.hasItems;import static org.junit.Assert.assertThat;import java.util.ArrayList;imp...

2018-06-29 22:24:41

阅读数 3323

评论数 0

Java设计模式学习总结(9)——结构型模式之过滤器模式(标准模式)

过滤器模式(Filter Pattern)或标准模式(Criteria Pattern)是一种设计模式,这种模式允许开发人员使用不同的标准来过滤一组对象,通过逻辑运算以解耦的方式把它们连接起来。这种类型的设计模式属于结构型模式,它结合多个标准来获得单一标准。实现我们将创建一个Person对象、Cr...

2018-06-27 11:39:30

阅读数 2584

评论数 2

Java设计模式学习总结(8)——结构型模式之桥接模式

桥接(Bridge)是用于把抽象化与实现化解耦,使得二者可以独立变化。这种类型的设计模式属于结构型模式,它通过提供抽象化和实现化之间的桥接结构,来实现二者的解耦。这种模式涉及到一个作为桥接的接口,使得实体类的功能独立于接口实现类。这两种类型的类可被结构化改变而互不影响。我们通过下面的实例来演示桥接...

2018-06-27 09:33:59

阅读数 2466

评论数 0

Tomcat学习总结(18)—— Tomcat启动时org.apache.catalina.util.SessionIdGenerator产生安全随机类SecureRandom的实例慢问题解决

Tomcat7/8使用org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom类产生安全随机类SecureRandom的实例作为会话ID。SHA1PRNG算法是基于SHA-1算法实现且保密性较强的伪随机数生成器。在SHA1...

2018-06-26 17:54:03

阅读数 3051

评论数 0

Nginx学习总结(11)——提高Nginx服务器的安全性,稳定性和性能的12种技巧

TIP #1: 保持Nginx的及时升级目前Nginx的稳定版本为1.14.0,最好升级到最新版本,看官方的release note你会发现他们修复了很多bug,任何一款产品的生产环境都不想在这样的bug风险下运行的。另外,虽然安装包安装比通过源代码编译安装更容易,但后一个选项有两个优点:1)它允...

2018-06-26 14:53:54

阅读数 6107

评论数 2

Linux学习总结(48)——Linux防火墙iptables与firewalld学习总结

iptables命令是Linux上常用的防火墙软件,是netfilter项目的一部分。可以直接配置,也可以通过许多前端和图形界面配置。语法iptables(选项)(参数)选项-t<表>:指定要操纵的表;-A:向规则链中添加条目;-D:从规则链中删除条目;...

2018-06-26 14:23:08

阅读数 4598

评论数 0

Spring学习总结(26)——Spring事务原理详解

一、事务的基本原理Spring事务的本质其实就是数据库对事务的支持,没有数据库的事务支持,spring是无法提供事务功能的。对于纯JDBC操作数据库,想要用到事务,可以按照以下步骤进行:(1)、获取连接:Connection con = DriverManager.getConnection()(...

2018-06-22 18:12:52

阅读数 5098

评论数 1

Mysql学习总结(58)——深入理解Mysql的四种隔离级别

一、前言开发工作中我们会使用到事务,那你们知道事务又分哪几种吗?MYSQL标准定义了4类隔离级别,用来限定事务内外的哪些改变是可见的,哪些是不可见的。低的隔离级一般支持更高的并发处理,并拥有更低的系统开销。下面通过这篇文章我们来一起深入理解Mysql中的四种隔离级别。二、首先什么是事务?事务是应用...

2018-06-21 15:14:48

阅读数 4904

评论数 0

Java设计模式学习总结(7)——结构型模式之适配器模式

适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能。举个真实的例子,读卡器是作为内存卡和笔记本之间的适配器。您将内存卡插入读卡器,再将读卡器插入...

2018-06-21 10:18:40

阅读数 3066

评论数 0

Java设计模式学习总结(6)——创建型模式之原型模式

原型模式(Prototype Pattern)是用于创建重复的对象,同时又能保证性能。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式是实现了一个原型接口,该接口用于创建当前对象的克隆。当直接创建对象的代价比较大时,则采用这种模式。例如,一个对象需要在一个高代价的数据库操...

2018-06-20 10:07:55

阅读数 2735

评论数 0

Java设计模式学习总结(5)——创建型模式之建造者模式

建造者模式(Builder Pattern)使用多个简单的对象一步一步构建成一个复杂的对象。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。一个 Builder 类会一步一步构造最终的对象。该 Builder 类是独立于其他对象的。介绍意图:将一个复杂的构建与其表示相分离,使得同...

2018-06-19 11:41:20

阅读数 3211

评论数 0

Java设计模式学习总结(4)——创建型模式之单例模式

单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该...

2018-06-15 10:49:15

阅读数 4060

评论数 0

Java设计模式学习总结(3)——创建型模式之抽象工厂模式

抽象工厂模式(Abstract Factory Pattern)是围绕一个超级工厂创建其他工厂。该超级工厂又称为其他工厂的工厂。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在抽象工厂模式中,接口是负责创建一个相关对象的工厂,不需要显式指定它们的类。每个生成的工厂都能按照工厂模...

2018-06-15 09:48:03

阅读数 3922

评论数 0

Java设计模式学习总结(2)——创建型模式之工厂模式

工厂模式工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。介绍意图:定义一个创建对象的接口,让其子...

2018-06-14 10:52:30

阅读数 4769

评论数 0

秒杀系统架构优化思路

一、秒杀业务为什么难做1)im系统,例如qq或者微博,每个人都读自己的数据(好友列表、群列表、个人信息);2)微博系统,每个人读你关注的人的数据,一个人读多个人的数据;3)秒杀系统,库存只有一份,所有人会在集中的时间读和写这些数据,多个人读一个数据。 例如:小米手机每周二的秒杀,可能手机只有1万部...

2018-06-12 14:48:12

阅读数 5469

评论数 3

MyBatis学习总结(24)——Mybatis常见问题汇总

1. #{}和${}的区别是什么?#{}是预编译处理,${}是字符串替换。Mybatis在处理#{}时,会将sql中的#{}替换为?号,调用PreparedStatement的set方法来赋值;Mybatis在处理${}时,就是把${}替换成变量的值。使用#{}可以有效的防止SQL注入,提高系统安...

2018-06-07 09:24:50

阅读数 7720

评论数 8

Docker学习总结(34)——新手使用Docker的11条准则

Docker的具有很多的优点,比如:一体化——将操作系统、库版本、配置文件、应用程序等全部打包装在容器里。从而保证 QA 所测试的镜像 (image) 会携带同样的行为到达生产环境;轻量——内存占用极小,只为主要过程分配内存;快读——一键启动,就像启动常见的 linux 过程一样快。尽管如此,众多...

2018-06-02 09:56:36

阅读数 9042

评论数 0

提示
确定要删除当前文章?
取消 删除