简介
常用的设计模式分三大类:
创建型模式(Creational Patterns)
结构型模式(Structural Patterns)
行为型模式(Behavioral Patterns)
本章主要来介绍下常用的11种行为型设计模式。
行为型模式(Behavioral Patterns)
行为型模式主要关注对象之间的通信。
共11种:
简介
常用的设计模式分三大类:
创建型模式(Creational Patterns)
结构型模式(Structural Patterns)
行为型模式(Behavioral Patterns)
本章主要来介绍下常用的11种行为型设计模式。
行为型模式(Behavioral Patterns)
行为型模式主要关注对象之间的通信。
共11种:
add 加法
subtract 减法
multiply 乘法
divide 除法(整除、商保留指定小数位,获取商和余数)
示例如下:
public class BigDecimalTest {
@Test
public void test() {
BigDecimal a = new BigDecimal(10L);
BigDecimal b = new BigDecimal(3L);
System.out.println("a = " + a);
System.out.println("b = " + b);
// 加法
System.out.println("a + b = " + a.add(b));
// 减法
System.out.println("a - b = " + a.subtract(b));
// 乘法
System.out.println("a * b = " + a.multiply(b));
// 除法,如果不能整除抛出算术异常:ArithmeticException
System.out.println("a / a = " + a.divide(a));
// 除法,商向下取整
System.out.println("a / b = " + a.divide(b, RoundingMode.DOWN));
// 除法,商保留两位小数并向上取整
System.out.println("a / b = " + a.divide(b, 2, RoundingMode.UP));
// 除法,返回商和余数
BigDecimal[] bigDecimals = a.divideAndRemainder(b);
System.out.println("a / b = " + bigDecimals[0] + ",余数 = " + bigDecimals[1]);
}
}
示例运行结果如下:
a = 10
b = 3
a + b = 13
a - b = 7
a * b = 30
a / a = 1
a / b = 3
a / b = 3.34
a / b = 3,余数 = 1
简介
常用的设计模式分三大类:
创建型模式(Creational Patterns)
结构型模式(Structural Patterns)
行为型模式(Behavioral Patterns)
本章主要来介绍下常用的7种结构型设计模式。
结构型模式(Structural Patterns)
结构型模式主要关注类和对象的组合。继承的概念被用来组合接口和定义组合对象获取新功能的方式。
共7种:
使用MySQL自定义变量实现:
-- 设置初始值
select @rownum:=0;
-- rownum自定义变量赋值
select @rownum:= @rownum + 1 as rownum from sys_user;
Docker Compose介绍
Docker Compose是单机多容器部署工具,通过YML文件定义多容器如何部署,使用一个命令就可以从YML配置中创建并启动所有服务,方便多依赖的应用程序快速发布和部署。
Docker Compose安装
WIN/MAC版本默认自带,Linux版本需单独安装。
Linux上安装Docker Compose
下载Docker Compose:
$ sudo curl -L "https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
添加可执行权限:
$ sudo chmod +x /usr/local/bin/docker-compose
创建软链:
$ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
测试是否安装成功:
$ docker-compose version
cker-compose version 1.24.1, build 4667896b