7 双斜杠少年

尚未进行身份认证

我要认证

希望经记录下来自己学习过程,并和大家一块分享

等级
TA的排名 837

表达式解析器Mvel2.0(MVFLEX Expression Language)

表达式解析器Mvel2.0(MVFLEX Expression Language)时间过的好快,突然就发现,已经过去一两年了,这一两年博客也写的不多,快要进入中年了,最重要的就是自律。要好好睡觉,好好学习,好好工作。废话不多说,这次给大家说的是 表达式语言解析Mvel2.0简介MVEL为 MVFLEX Expression Language(MVFLEX表达式语言)的缩写,它是一种动态/静态的可嵌入的表达式语言和为Java平台提供Runtime(运行时)的语言。最初是作为一个应用程序框架实用程序的语

2020-08-14 16:48:07

Java8重新认识HashMap

本文Java 版本 1.8.0_92-b14引子前段时间,朋友问了一道力扣算法题,求两数之和。题目是给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。要求时间复杂度:O(n)我们把包含有 nn 个元素的列表遍历两次。由于哈希表将查找时间缩短到 O(1)O(1) ,所以时间复杂度为 O(n)。空间复杂度:O(n)所需的额外空间取决于哈希表中存储的元素

2020-06-28 11:31:41

es的term 、terms 和 match、range 和缓存

es 的term 、terms 和 match、range 和缓存本文是学习es的中文官网,自己的学习总结整体数据插入及查询流程数据存入将新接收的数据存在buffer中,数据分词处理后,新建倒排索引 生成segment文件, (正常是在将数据写入磁盘时生成segment )但为了实时性, 把这个segment 刷到文件系统缓存中, 此时lucene可以检索这个新生成的segment, 为了保证数据的安全性(服务宕机丢失缓存数据), ES在在把数据写到内存buffer的时候同时还记录了一个trans

2020-06-01 20:51:48

shell 小技巧字符串-中(下)划线转驼峰

帮朋友写的小列子,需要中划线转驼峰例如:user-id 转换为 userId百度了一下发现竟然没有人写这个小李子,所以就贴出来了。#!/bin/bashPARA=$1arr=(`echo $PARA | tr '-' ' '`) result=''for var in ${arr[@]}do firstLetter=`echo ${var:0:1} | awk '{print toupper($0)}'` otherLetter=${var:1} resul

2020-05-14 17:57:17

Rust 初识及Rust的ESApi

RustRust是一门系统编程语言 ,专注于安全 ,尤其是并发安全,支持函数式和命令式以及泛型等编程范式的多范式语言。Rust在语法上和C++类似 ,但是设计者想要在保证性能的同时提供更好的内存安全。Rust致力于成为优雅解决高并发和高安全性系统问题的编程语言 [10] ,适用于大型场景,即创造维护能够保持大型系统完整的边界。这就导致了它强调安全,内存布局控制和并发的特点。安装curl https://sh.rustup.rs -sSf | sh安装完成后,开始在idea 中配置r

2020-05-14 17:13:06

mysql DISTINCT去重,返回去重后的所有字段

一天一个mysql小技巧问题:distinct 对某一字段去重,返回记录所有字段值,但是记录其它字段也有重复值,导致无法返回。描述:在使用mysql时,有时需要查询出某个字段不重复的记录,distinct 关键字可以过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回所有值。其原因是 distinct只能返回它的目标字段,而无法返回其它字段。用distinct...

2020-04-21 17:55:41

java8 小技巧保证分组groupingBy后排序不变

问题:遇到一个小问题,查询出来一组数据后,按照其中的属性进行groupBy 分组 ,分组后要保证顺序不变。排查首先去api中查找解决//一个参数 public static <T, K> Collector<T, ?, Map<K, List<T>>> groupingBy(Function<? super T, ? ex...

2020-03-03 14:45:59

docker安装ES及ik插件和ES常用查询语句

es docker 安装安装过程如下:首先在docker hub 拉取elk 镜像 (因为我用的是630 版本所以加了版本号)https://hub.docker.com/r/sebp/elk关于容器更多信息查看 https://elk-docker.readthedocs.io/docker pull sebp/elk:630 启动命令( 如果想在后台启动容器的话可以 加 -d ...

2020-02-24 17:53:19

springboot+es(二)多数据源配置

上一篇文章简单写了 springboot 和 es 的使用 点击查看这一篇说一下多数据源以及多种查询情况的语句多数据源配置在config 文件夹下新增数据源配置,有几个数据源就新增几个配置类,例子是老师信息数据源 和学生信息数据源两个 。引入依赖 <dependency> <groupId>org.elasticsearch.client...

2020-02-24 17:23:59

py定时库APScheduler初识及 skipped: maximum number of running instances reached 错误排查

需求手头小程序,需求python写个定时脚本,调用java 程序清理程序一些脏数据。临时找到这个 APScheduler 定时库,准备用一次简介简单介绍如下:高级Python调度程序(APScheduler)是一个Python库,可让您安排稍后执行的Python代码,可以是一次,也可以是定期执行。 您可以根据需要随时添加新作业或删除旧作业。 如果将作业存储在数据库中,它们也将在调度程序重...

2020-01-08 11:15:27

RocketMq 初识和springboot-rockerMq

介绍:消息队列(Message Queue,简称MQ)。消息中间件作为实现分布式消息系统可拓展、可伸缩性的关键组件,具有高吞吐量、高可用等等优点。优势:削峰填谷(主要解决瞬时写压力大于应用服务能力导致消息丢失、系统奔溃等问题)系统解耦(解决不同重要程度、不同能力级别系统之间依赖导致一死全死)提升性能(当存在一对多调用时,可以发一条消息给消息系统,让消息系统通知相关系统)蓄流压测(线上...

2019-12-22 16:48:56

红黑树学习及Java实现

BST二叉查找树(Binary Search Tree,简称BST)是一棵二叉树,它的左子节点的值比父节点的值要小,右节点的值要比父节点的值大。它的高度决定了它的查找效率。在理想的情况下,二叉查找树增删查改的时间复杂度为O(logN)(其中N为节点数),最坏的情况下为O(N)。当它的高度为logN+1时,我们就说二叉查找树是平衡的。BST存在的问题BST存在的主要问题是,数在插入的时候会...

2019-10-31 17:41:41

SpringBoot 通过拦截器验证Referer 防御CSRF攻击

问题:**CSRF概念:**CSRF跨站点请求伪造(Cross—Site Request Forgery),跟XSS攻击一样,存在巨大的危害性,你可以这样来理解:攻击者盗用了你的身份,以你的名义发送恶意请求,对服务器来说这个请求是完全合法的,但是却完成了攻击者所期望的一个操作,比如以你的名义发送邮件、发消息,盗取你的账号,添加系统管理员,甚至于购买商品、虚拟货币转账等。如下:其中Web A为...

2019-10-10 19:02:12

分布式锁浅谈之redis锁

Redis 分布式锁业务:用于库存扣减,因为是微服务架构所以 jvm 级别的锁都不满足需求。故考虑分布式锁A:服务获取锁 修改库存 释放锁背景:在单机时代,虽然不存在分布式锁,但也会面临资源互斥的情况,只不过在单机的情况下,如果有多个线程要同时访问某个共享资源的时候,我们可以采用线程间加锁的机制,即当某个线程获取到这个资源后,就需要对这个资源进行加锁,当使用完资源之后,再解锁,其它线程就可...

2019-09-28 16:47:07

springboot+dubbo+validation 进行 rpc 参数校验

注意:本文dubbo 版本 2.8.4 springboot 版本 2.0.4.RELEASE项目结构test-rest (前端消费着,controller 层,springboot+maven项目)test-api (dubbo服务 的 api ,只记录 service 接口和 model ,maven 项目)test-provider(dubbo 服务提供者,实际的数据库操作及业务层...

2019-09-22 17:53:58

Java 读写csv

本文结构:废话动手读csv写csv工作中需要读写csv,由于csv 文件较大,数据比较多,所以需要选择一个速度快的csv 读取插件。经过比较选择opencsv 。官方解释:Opencsv是一个易于使用的CSV(逗号分隔值)解析器库。之所以开发它,是因为当时所有CSV解析器都没有商业友好的许可证。Java 7是目前支持的最小版本。Opencsv支持您可能想要做的所有基本CSV类型的事情...

2019-08-02 18:06:14

Java IP 地址服务 GeoIP

本文内容介绍动手什么是GeoIP地理知识产权数据库与服务:业界领先的知识产权情报Geoip 是 MaxMind 的IP智能产品GeoIP由多个相关产品组成。GeoIP允许您发现关于特定IP地址的信息。提供web服务、基于订阅的可下载数据库和免费的可下载数据库,MaxMind GeoIP2产品为内容个性化、欺诈检测、广告定位、流量分析、遵从性、地理定位、地理防护和数字版权管理等广泛应用...

2019-08-02 18:01:28

drools 基于数据库实现动态规则

drools 基于数据库实现动态规则,即为将规则文件字符串 存在数据库中,然后规则引擎执行的时候将规则从数据库中读取出来,写入到规则引擎KieFileSystem中,加载规则。从而实现,修改数据库后,即可及时执行规则。创建springboot + mybatis 项目https://abelyang.blog.csdn.net/article/details/89296273导入drools...

2019-06-12 16:12:09

drools 基于jar包实现动态规则

Drools中提供了一个类KieScanner,可以支持从Maven存储库动态的加载并更新规则。官方给出的例子没有很好的证明这一能力。项目演示共分三个包:springboot-drools-dynamic-rules: springboot 和 drools 的结合,drools运行于此,并对外提供rest 接口服务springboot-drools-dynamic-rules-api...

2019-06-12 16:08:31

java调用shell脚本执行spark任务错误

java调用shell脚本执行spark任务使用java通过 Runtime.getRuntime().exec(); 调用shell 脚本,在脚本中执行 spark 任务会报错,如下:19/05/15 15:46:47 WARN StandaloneAppClient$ClientEndpoint: Failed to connect to master 192.168.9.2:7077...

2019-05-16 14:23:23

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 分享宗师
    分享宗师
    成功上传21个资源即可获取