redis学习笔记(一)
一、非关系数据库
not only Sql
是非关系型数据库
在一个项目中出现了一个比较棘手的问题,情况是这样的:由于项目场景的需要,引入了公司技术架构部门在activiti
工作流的基础上进行二次开发的工作流组件,使用该组件,需要实现几个获取岗位信息、人员信息相关的接口,工作流组件通过restTemplate
调用这些接口来获取对应的人员、岗位信息用于工作流服务的节点信息显示,在开发过程中一切正常且部署到开发环境中调试过程中也是一切正常,但是当部署到测试环境后,发现接口出现乱码。
最近工作上需要将一些业务数据推送到各个门户网站,而各个门户网站上接收数据的方式不一样,有webservice
和http
两种方式,初次使用webservice
,记录一下踩得一些坑。
旨在记录在使用
git
过程中出现的一些问题和使用上的一些操作记录、或者是git
一些概念上的理解,防止重复踩坑。
jdk8
中引入的函数式lambda
表示式,同时引入了Stream
流,这种流可以堆集合进行一些复杂查找、过滤、映射、规约等操作。一个stream
是由三部分组成,数据源流 ->零个或多个中间操作 -> 零个或一个终止操作
。中间操作是对数据的加工处理并且中间操作是懒lazy
操作,并不会马上启动,需要等待终止操作允许到才会开始执行。
[TOC]
最近正式环境出现一起事故,业务端经过一些列的业务逻辑之后,使用wkhtmltopdf
工具进行html
转换为pdf
,但出现生成完成之后(正常结束,并未发生异常)业务端再次获取这个pdf
文件时,出现文件不存在问题。
公司内部为了SQL
脚本可管理、可重复执行,每个版本提交的每个脚本都需要填写对应的版本、负责人、版本号、具体脚本等信息并确保脚本可重复执行,但是基础具体的SQL
之外,其他需要填写的信息都属于重复操作,所以想着写一个工具来代替重复操作,只需要编写具体的SQL
,其他信息根据配置自动生成,由于脚本需要允许可重复执行,故需要对编写的执行SQL
进行词法分析,提取其中的数据库实例名称、数据表名、字段名、索引名等信息,在引入德鲁伊的词法分析器之后,感觉使用起来非常简单,需要什么类型的脚本,打入什么类型的实体即可,看了一下源码,词法分析器是采用访问者模式设计的。
spring
事件监听机制实际上就是一个典型的观察者模式,在观察者模式的基础之上进行的抽象和处理。使得开发者可以根据自己的业务特点依附于spring
容器进行事件的注册、发布、处理。