Home

Elasticsearch文档分析器

分析器测试 根据使用的文档分析器和测试的文本,给出分词结果 GET http://localhost:9200/_analyze { "analyzer": "standard", "text": "Text to analyze" } 标准分词器standard,适用于英文分词,不适用于中文,对中文只进行单字切分 IK分词器ik_max_word,对中文进行细粒度的切分,会对结果再继续尝试切分,直到不能切分为止。例如“中华人民共和国国歌”将切分为“中华人民共和国”、“中华人民”、“中华”、“华人”、“人民共和国”、“人民”、“人”、“民”、“共和国”、“共和”、“和”、“国国”、“国歌” IK分词器ik_smart,对中文进行粗粒度的切分,。例如“中华人民...

Read more

Python基本语法

基本语法 注释 # 注释 输入输出函数 # 输入 input("请输入:") # 打印 print("xxx") 变量操作 # 赋值 a = 100 b = 200 c = 300 # 序列解包赋值,左侧变量数量与右侧序列元素数一致 t = (100, 200, 300) l = [100, 200, 300] s = "edf" a, b, c = t a, b, c = l a, b, c = s a, b, c = 100, 200, 300 # 左侧变量数量与右侧序列元素数不一致,剩余的给到最后一个变量 a, *b = t # 匿名变量,约定使用下划线表示 _ = 1 # 删除变量 del a 命名约定 # 模块 module_name # 包 ...

Read more

Python环境搭建

操作系统 本文的环境搭建基于Windows操作系统 Python 下载对应版本的Python安装包,安装即可 https://www.python.org/downloads/ Anaconda 下载安装包并安装 https://www.anaconda.com/download 使用Anaconda不需要预先装Python,Anaconda可创建完整的环境 配置环境变量 变量 值 ANACONDA_HOME C:\ProgramData\Anaconda3 Path %ANACONDA_HOME% ...

Read more

Dubbo常用配置

基础环境 本文基于Spring Boot模块使用Dubbo 配置方式 以下配置方式,优先级从低到高排列 全局级配置,服务提供者 dubbo: provider: timeout: 2000 全局级配置,服务消费者 dubbo: consumer: timeout: 2000 服务级配置,服务提供者 package com.oliverclio.order.service; import com.oliverclio.api.order.dto.OrderDto; import com.oliverclio.api.order.service.OrderService; import com.oliverclio....

Read more

Dubbo服务架构模块搭建

基础环境 本文基于Spring Boot模块使用Dubbo,分为三个Spring Boot模块,包括公共模块(api)、服务提供者模块(order)、服务消费者模块(business)。 注册中心 Dubbo需要依赖一个配置中心,本文以Zookeeper为例,需要先部署好一个Zookeeper。 Zookeeper在Docker下安装 公共模块 增加Dubbo相关依赖 <dependency> <groupId>org.apache.dubbo</groupId> <artifactId>dubbo-spring-boot-starter</artifactId> <...

Read more

RestTemplate使用

底层选择 RestTemplate只做封装,没有自己实现的底层。发送HTTP请求是同步阻塞式 源码HttpAccessor ClientHttpRequestFactory默认是SimpleClientHttpRequestFactory,底层使用JDK的HttpURLConnection,不支持HTTP的PATCH方法。 底层切换为okHTTP <dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>okhttp</artifactId> <version>4.7.2</version> <...

Read more

Spring定时任务使用

注解方式 基于Spring Boot项目 @SpringBootApplication @EnableScheduling public class EmqxHttpLoggerApplication { public static void main(String[] args) { SpringApplication.run(EmqxHttpLoggerApplication.class, args); } } @Component @AllArgsConstructor public class MqttLogScheduler { private final MqttLogMapper m...

Read more

Maven依赖范围与传递性

scope属性 compile,默认值,表示此依赖包出现在任何classpath内,依赖传递 test,表示此依赖包只出现在与测试相关的classpath内,默认情况下,只有src/main/test/java路径下的类可以引入此依赖包中的类,依赖不传递 provided,表示此依赖出现在非运行时环境的classpath内,依赖不传递 runtime,表示此依赖出现在与测试相关和运行时的classpath,依赖传递 system,表示此依赖出现在非运行时环境的classpath内,依赖不传递 optional属性 false,默认值,表示传递性由scope属性来指定 true,表示依赖不传递 对打包的影响 Maven打JAR包默认不会...

Read more

Java运行时泛型信息使用

概述 由于Java泛型擦除机制,运行时无法获取本类的泛型信息,但父类或实现的接口的泛型类型信息会记录到类签名信息中。因此,假如我们需要在运行时获取本类的泛型信息,可以通过在创建本类对象的时候创建本类的匿名内部类的子类对象的方法实现。 创建匿名内部类的子类对象 创建对象时后面加上{} List<String> list = new ArrayList<>() {}; 获取父类或接口的泛型信息 Type接口是类型信息相关类的统一接口,带泛型类型的实现类为ParameterizedType,不带泛型的实现类为Class 获取父类的泛型信息 private Type getParameterizedType(int index) { Type ...

Read more