摘要: 前言 这段时间在remix中学习solidity语法,虽然remix很强大,但是编写好的合约代码很容易丢失,虽然remix可以使用本地文件系统及github中的远程仓库,但还是想尝试一下在本地开发智能合约及网页与智能合约交互的过程 话不多说,本文主要介绍一个基于以太坊的智能合约投票dapp的一个完整 阅读全文
posted @ 2022-07-22 10:13 狮子挽歌丿 阅读(545) 评论(0) 推荐(0) 编辑
摘要: 背景 由于公司使用自己的编排系统(基于docker),所以在业务服务启动时,需要对某些服务对象进行初始化,本文就对es索引的初始做一个小的分享; 大致流程 初始化步骤主要是基于docker启动一个容器执行自己编写好的sh脚本 基础镜像选择 由于es大部分操作都是基于es的rest api进行,所以, 阅读全文
posted @ 2022-07-22 10:12 狮子挽歌丿 阅读(387) 评论(0) 推荐(0) 编辑
摘要: 1.变化是永恒的 首先,我们由一个例子来进入入今天的主题 又是一个周三,快要下班了,老大突然拉住我,喜滋滋地告诉我:“××公司很满意我们做的模型,又签订了一个合同,把奔驰、宝马的车辆模型都交给我们公司制作了,不过这次又额外增加了一个新需求:汽车的启动、停止、喇叭声音、引擎声音都由客户自己控制,他想什 阅读全文
posted @ 2022-07-22 10:11 狮子挽歌丿 阅读(51) 评论(0) 推荐(0) 编辑
摘要: 安装准备 本文安装 Sonarqube是基于docker-compose的安装教程,安装 Sonarqube前需安装docker和docker-compose 环境准备 因为sonarqube采用elasticsearch作为检索后台服务,在Linux下面部署应用的时候,有时候会遇上Socket/F 阅读全文
posted @ 2022-07-22 10:11 狮子挽歌丿 阅读(639) 评论(0) 推荐(0) 编辑
摘要: 在前面介绍的工厂方法模式是考虑的一类产品的生产,如手机工厂只生产手机,也就是说,工厂方法模式只考虑生产同等级产品,但是在现实生活中,许多工厂是综合型的工厂,手机工厂不仅仅只生产手机,还生产耳机、手机壳、充电宝等等 本节要介绍的抽象工厂模式将考虑多等级产品的生产,将同一个具体工厂所生产的位于不同等级的 阅读全文
posted @ 2022-07-22 10:10 狮子挽歌丿 阅读(65) 评论(0) 推荐(0) 编辑
摘要: 工厂方法模式是为了弥补简单工厂模式的不足并且继承它的优点而延生出的一种设计模式,它能更好的符合开闭原则的要求。 1 模式介绍 1.1 定义 工厂方法模式,又称工厂模式、多态工厂模式和虚拟构造器模式,通过定义工厂父类负责定义创建对象的公共接口,而子类则负责生成具体的对象。 1.2 解决的问题 发现简单 阅读全文
posted @ 2022-07-22 10:09 狮子挽歌丿 阅读(60) 评论(0) 推荐(0) 编辑
摘要: 1.简介 Compose 项目是 Docker 官方的开源项目,负责实现对 Docker 容器集群的快速编排。其代码目前在 https://github.com/docker/compose 上开源。 我们知道使用一个 Dockerfile 模板文件,可以让用户很方便的定义一个单独的应用容器。然而, 阅读全文
posted @ 2022-07-22 10:08 狮子挽歌丿 阅读(1608) 评论(0) 推荐(0) 编辑
摘要: 关于单例模式,思想很简单,就是确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例,减少内存开支, 主要有两大实现方式:懒汉式、饿汉式。 饿汉式:在类加载时就完成了初始化,所以类加载比较慢,但获取对象的速度快。 懒汉式:在类加载时不初始化,等到第一次被使用时才初始化。 打一个很形象的比喻 阅读全文
posted @ 2022-07-22 10:08 狮子挽歌丿 阅读(284) 评论(0) 推荐(0) 编辑
摘要: Java8中有两大最为重要的改变。第一个是 Lambda 表达式;另外一 个则是 Stream API(java.util.stream.*)。 Stream 是 Java8 中处理集合的关键抽象概念,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找、过滤和映射数据等操作。 使用Stream 阅读全文
posted @ 2022-07-22 10:07 狮子挽歌丿 阅读(26) 评论(0) 推荐(0) 编辑
摘要: Docker 的安装和使用有一些前提条件,主要体现在体系架构和内核的支持上。对于体系架构,除了 Docker 一开始就支持的 X86-64 ,其他体系架构的支持则一直在不断地完善和推进中。 Docker 分为 CE 和 EE 两大版本。 CE 即社区版(免费,支持周期 7 个月), EE 即企业版, 阅读全文
posted @ 2022-07-22 10:07 狮子挽歌丿 阅读(1443) 评论(0) 推荐(0) 编辑
摘要: Optional 类(java.util.Optional) 是一个容器类,代表一个值存在或不存在,原来用 null 表示一个值不存在,现在 Optional 可以更好的表达这个概念。并且可以避免空指针异常。 常用方法: Optional.of(T t) : 创建一个 Optional 实例 Opt 阅读全文
posted @ 2022-07-22 10:06 狮子挽歌丿 阅读(23) 评论(0) 推荐(0) 编辑
摘要: 总结一下java8中的新特性内置的四大核心函数式接口 函数式接口在java中是指:有且仅有一个抽象方法的接口 函数式接口,即适用于函数式编程场景的接口。而java中的函数式编程体现就是Lambda,所以函数式接口就是可以适用于Lambda使用的接口。只有确保接口中有且仅有一个抽象方法,Java中的L 阅读全文
posted @ 2022-07-22 10:05 狮子挽歌丿 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 方法引用的使用场景 我们用Lambda表达式来实现匿名方法。但有些情况下,我们用Lambda表达式仅仅是调用一些已经存在的方法,除了调用动作外,没有其他任何多余的动作,在这种情况下,我们倾向于通过方法名来调用它,而Lambda表达式可以帮助我们实现这一要求,它使得Lambda在调用那些已经拥有方法名 阅读全文
posted @ 2022-07-22 10:05 狮子挽歌丿 阅读(15) 评论(0) 推荐(0) 编辑
摘要: Runner Runner就像一个个的工人,而Gitlab-CI就是这些工人的一个管理中心,所有工人都要在Gitlab-CI里面登记注册,并且表明自己是为哪个工程服务的。当相应的工程发生变化时,Gitlab-CI就会通知相应的工人执行软件集成脚本。如下图所示: gitlab里面的runner叫Git 阅读全文
posted @ 2022-07-22 10:04 狮子挽歌丿 阅读(9666) 评论(0) 推荐(0) 编辑
摘要: 总结一下java8中的新特性lambda表达式 1 匿名函数 Lambda是一个匿名函数,可以理解为一段可以传递的代码(将代码像数据一样传递);可以写出更简洁、更灵活的代码;作为一种更紧凑的代码风格,是Java语言表达能力得到提升。 有一个需求:获取公司中年龄小于 35 的员工信息、获取公司中工资大 阅读全文
posted @ 2022-07-22 10:04 狮子挽歌丿 阅读(47) 评论(0) 推荐(0) 编辑
摘要: CICD是什么? 由于目前公司使用的gitlab,大部分项目使用的CICD是gitlab的CICD,少部分用的是jenkins,使用了gitlab-ci一段时间后感觉还不错,因此总结一下 介绍gitlab的CICD之前,可以先了解CICD是什么 我们的开发模式经历了如下的转变:瀑布模型->敏捷开发→ 阅读全文
posted @ 2022-07-22 10:03 狮子挽歌丿 阅读(10600) 评论(2) 推荐(4) 编辑
摘要: docker配置远程访问 Docker Daemon 默认情况下是只允许本地访问的,不允许远程访问。本文将首先介绍 Docker Daemon 的连接方式,然后说明如何配置远程访问。即实现通过本地 docker 客户端访问远程主机的 docker 服务端,以此来监控远程主机上的 Docker 容器。 阅读全文
posted @ 2022-07-22 10:02 狮子挽歌丿 阅读(4172) 评论(0) 推荐(0) 编辑
摘要: 预备知识 搞清楚/var/run/docker.sock参数的前提是了解docker的client+server架构,如下图 可见在电脑上运行的docker由client和server组成,我们输入docker version命令实际上是通过客户端将请求发送到同一台电脑上的Doceker Daemo 阅读全文
posted @ 2022-07-22 10:02 狮子挽歌丿 阅读(6886) 评论(0) 推荐(1) 编辑
摘要: Docker Hub 目前 Docker 官方维护了一个公共仓库 Docker Hub,大部分需求都可以通过在 Docker Hub 中直接下载镜像来实现。 注册 你可以在 https://cloud.docker.com 免费注册一个 Docker 账号。 登录 可以通过执行 docker log 阅读全文
posted @ 2022-07-22 10:01 狮子挽歌丿 阅读(421) 评论(0) 推荐(0) 编辑
摘要: 最近使用到了javaCV进行视频帧转码,记录一下项目中使用javaCV的对h264/h265的视频帧的base64字符串转成jpg图片的一次实现 功能流程: <javacpp.version>1.4.1</javacpp.version> <ffmpeg.version>3.4.2-1.4.1</f 阅读全文
posted @ 2022-07-22 10:01 狮子挽歌丿 阅读(2092) 评论(0) 推荐(0) 编辑