自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(126)
  • 收藏
  • 关注

原创 JAVA使用Apache POI动态导出Word文档

1、需要的环境2、创建模板3、书写java类4、测试。

2024-05-10 09:25:24 414 1

原创 庆祝我在CSDN上创作满四年:分享知识,共同成长

这一年对我来说既是挑战也是成长,我在这里记录了自己的技术探索和心得体会,也收获了来自社区的宝贵知识和友谊。我期待在接下来的旅程中,能够与大家分享更多,学习更多,成长更多。我通过评论和私信与许多读者进行了深入的讨论,这些交流极大地丰富了我的视野。写作过程中,我不仅巩固了自己的专业知识,还提高了表达和沟通的能力。更重要的是,我结识了许多志同道合的朋友。

2024-04-28 19:59:25 128

原创 MAC(M1芯片)编译Java项目慢且发热严重问题解决方案

对于苹果自研的芯片,很多软件可能存在兼容性问题,如果因芯片而导致严重的转译问题,则需要去寻找合适的软件版本。

2024-04-09 09:56:37 726

原创 ClickHouse基于数据分析常用函数

ClickHouse支持CTE(Common Table Expression,公共表达式),以增强查询语句的表达│ 4 ││ 16 │在改用CTE的形式后,可以极大地提高语句的可读性和维护性。WITH│ 16 │可以定义变量,这些变量能够在后续的查询子句中被直接访问。# tb_mysql- 创建数据id UInt8,age UInt8# 数据分析WITHSELECTnameFROMtb_mysql;

2024-02-02 23:45:18 1399

原创 IDEA设置新建类注释、手动注释详解

1和6结合表示输入/*然后回车就可以自动补全注释模板;4对模板中的占位符变量进行赋值;5表示模板使用哪些文件,比如java(必须要设置)每次在一台新电脑安装idea,都需要重新设置idea注释配置,说常用吧,也就新安装时才用,时间久步骤容易忘记,所以用此文章记录一下。2、点击includes后在File Header后面的栏框中输入模板内容即可。此步骤讲解的是新建类的时候,类自动能带出配置好的模板注释。2、在此目录下新建一个组模版(例如:myGroup)此文章我们就用以下模板来进行讲解。

2024-01-03 22:18:06 827 1

原创 ClickHouse初级 - 第八章 用户行为分析实际案例

到此我们已经完成了基于ClickHouse最常见的的一些事件分析功能。最主要还是介绍了SQL的实现。其中缺少了标签画像相关的条件,这些内容则需要根据公司标签群组具体是表结构来实现SQL,最终可以通过in语句来将标签或者人群的数据当做条件。最后还有一大部分工作则是在前端交互的代码开发上,需要设计好返回的JSON。但是有了上面的基础,相信这些对你来说只是时间问题。事件分析路径分析session分析漏斗分析留存分析转载地址进一步案例sql查看。

2023-12-19 20:48:44 1120

原创 ClickHouse初级 - 第七章 分片集群

1)在 hadoop102 的/etc/clickhouse-server/config.d 目录下创建 metrika-shard.xml 文件。注意:ClickHouse 的集群是表级别的,实际企业中,大部分做了高可用,但是没有用分 片,避免降低查询性能以及操作集群的复杂性。配置的位置还是在之前的/etc/clickhouse-server/config.d/metrika.xml,内容如下。4)在 hadoop102 上修改/etc/clickhouse-server/config.xml。

2023-12-18 14:25:24 1462

原创 ClickHouse初级 - 第六章 副本

注意:我们演示副本操作只需要在 hadoop102 和 hadoop103 两台服务器即可,上面的操作,我们 hadoop104 可以你不用同步,我们这里为了保证集群中资源的一致性,做了同步。4)在hadoop102的/etc/clickhouse-server/config.xml中增加。分别在 hadoop102 和 hadoop103 上启动 ClickHouse 服务。6)在hadoop102和hadoop103上分别建表。3)同步到hadoop103和hadoop104上。

2023-12-18 14:25:12 770

原创 ClickHouse初级 - 第五章 SQL操作

由于操作比较“重”,所以 Mutation 语句分两步执行,同步执行的部分其实只是进行 新增数据新增分区和并把旧分区打上逻辑上的失效标记。基本上来说传统关系型数据库(以 MySQL 为例)的 SQL 语句,ClickHouse 基本都支持, 这里不会从头讲解 SQL 语法只介绍 ClickHouse 与标准 SQL(MySQL)不一致的地方。3)with cube : 从右至左去掉维度进行小计,再从左至右去掉维度进行小计。4)with totals: 只计算合计。同 MySQL 的修改字段基本一致。

2023-12-18 14:24:59 826

原创 ClickHouse初级 - 第四章 表引擎的使用

2)向表中插入数据。

2023-12-18 14:24:48 914

原创 ClickHouse初级 - 第三章 数据类型

例如,将固定精度的数字转换为整数值,如时间用毫秒为单位表示,因为浮点型进行计算时可能引起四舍五入的误差。➢ Datetime64 接受年-月-日 时:分:秒.亚秒的字符串比如‘2019-12-16 20:50:10.66’➢ Datetime 接受年-月-日 时:分:秒的字符串比如 ‘2019-12-16 20:50:10’1)日期类型,用两个字节存储,表示从 1970-01-01 (无符号) 到当前的日期值。➢ Decimal64(s),相当于Decimal(18-s,s),有效位数为1~18。

2023-12-18 14:24:35 933

原创 ClickHouse初级 - 第二章ClickHouse 的安装

2.2 将/2.资料/ClickHouse 下 4 个文件上传到 hadoop102 的 software/clickhouse 目录下。2)在 hadoop102 的/etc/security/limits.d/20-nproc.conf 文件的末尾加入以下内容。下载地址:http://repo.red-soft.biz/repos/clickhouse/stable/el7/1)在hadoop102的 /etc/security/limits.conf 文件的末尾加入以下内容。(3)重启三台服务器。

2023-12-18 14:24:22 778

原创 ClickHouse初级 - 第一章Clickhouse入门

clickHouse是俄罗斯的Yandex于2016年开源的列式存储数据库(DBMS),使用c++语言编写,主要用于在线分析处理查询(OLAP),能够使用SQL查询实时生成分析数据报告。

2023-12-18 14:24:08 874

原创 UML-认识6种箭头(画类图无烦恼)

文章目录一、背景二、箭头详解2.1 泛化(Generalization)2.2 实现(Realize)2.3 依赖(Dependency)2.4 关联(Association)2.5 聚合(Aggregation)2.6 组合(Composition)一、背景因公司需求需要看懂类图以及能独立上手画类图,因类图中的基础就是6大箭头,而且6大箭头概念有些模糊,所以就有了此文章二、箭头详解UML中描述对象和类之间相互关系的方式包括:依赖(Dependency),关联(Association),聚合(

2023-12-12 18:10:24 4987

原创 mysql报错:mysql8插入sql关键字“rank”问题

通过insert语句直接在navicat插入也不行,说明不是项目的问题,经过一步步的排查后定义出是“rank”字段问题,将“rank”字段换成其他的名称就可以。2、如果是mysql5.7版本的话,rank作为字段是没有问题的(版本的问题),如果本地mysql是5版本不会报错,线上是mysql8就会报错。在设计表的需要定义一个排名的字段,于是定义了“rank”字段,使用mybatisplus进行插入的时候,项目报错。1、“rank”字段在mysql8中是一个新功能(关键字),所以不可以将其当作字段名;

2023-09-20 10:16:25 1306

原创 spark报错java.lang.IllegalArgumentException: Can‘t get JDBC type for array<string>

2、原因:hive表中元素为数组类型,mysql不支持,需要将类型转换一下就可(比如转换成字符串等等)1、使用spark任务将hive中的表数据存入到mysql中报如下错误。3、方案:进行备份之前将hive中为数组类型的数据结构进行转换一下。

2023-08-05 12:24:36 464

原创 定时任务之Springboot整合Quartz详解

Springboot整合Quartz详解

2023-08-02 15:17:22 3688

原创 linux报错:cannot create temp file for here-document: No space left on device

linux系统中使用cd命令进入某目录时,像往日一样利用tab键进行文件名的补全,结果报如下错误。最终定位是此目录下的两个logs文件比较大,如果文件删除没有影响的话,直接rm删除掉日志文件即可。5)可以看到是 ./var占用的空间比较大。ps:最开始时 /dev/dm-0 目录报错mounted on显示100%2)输入:df -h 命令查看磁盘占用情况。1)分析:通过翻译可知是磁盘已满。)后进入显示100%目录(

2023-04-08 11:47:55 1886 1

原创 SpringBoot集成Freemarker模板生成Word文档,项目打成jar包到生产环境显示找不到模板文件

2、解决方案:注入FreeMarkerConfigurer配置类,因为freemarker模板的默认目录就在resourse下的templates目录下,使用freeMarkerConfigurer.getConfiguration().getTemplate(“word.ftl”)可直接获取到对应的模板文件。本人出错的代码大概如下所示:这块代码主要是testTemplate()方法中configuration通过模板名获取模板对象而服务,所以报错也是这行代码导致线上报错。

2023-04-05 17:15:22 2279

原创 navicat连接mysql报错1251的解决方法

navicat连接mysql报错1251的解决方法1、新安装的mysql8,使用破解版的navicat连接的时候一直报错,如图所示:2、网上查找原因发现是mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password, 解决问题方法有两种,一种是升级navicat驱动,一种是把mysql用户登录密码加密规则还原成mysql_native_password. 由于用的是破解版的navicat,所以只能用第二种方法

2023-03-30 09:49:35 4950 1

原创 JAVA利用Freemarker模版动态生成并导出Word文档(全网最详细)

FreeMarker是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页、电子邮件、配置文件、源代码等)的通用工具。它不是面向最终用户的,而是一个Java类库,是一款程序员可以嵌入他们所开发产品的组件。

2023-03-29 19:00:14 8688 8

原创 easyExcel与poi版本不兼容导致的后台报错问题

com.alibaba.excel.exception.ExcelAnalysisException: java.lang.NoClassDefFoundError: org/apache/poi/poifs/filesystem/FileMagic

2023-02-24 17:46:37 4799

原创 elasticSearch7版本文档中文属性模糊查询不准确

通过java模糊查询的api(QueryBuilders.fuzzyQuery)查询name为“已”的时候可以查询,查询为“已发布”的时候查询不出来。name":"catalog=Catalog(value=699015935012372480, displayName=/默认分组),3.1 给索引添加分词器(删除索引后,然后重新建立索引并设置分词器,如2中图所示)14:33:17)status:已发布”ps:索引中没设置分词器。ps:索引中设置分词器后。

2023-02-06 19:00:10 2349

原创 并发编程(第九章 共享模型之工具 - J.U.C)

并发编程 - 共享模型之工具 - J.U.C

2022-08-31 22:32:44 115

原创 并发编程(第八章 共享模型之工具 - 线程池)

并发编程 - 共享模型之工具 - 线程池

2022-08-25 22:02:19 78

原创 并发编程(第七章 共享模型之不可变)

并发编程 - 共享模型之不可变

2022-08-23 10:39:11 44

原创 并发编程(第六章 共享模型之无锁)

并发编程-共享模型之无锁

2022-08-21 22:48:34 238

原创 并发编程(第五章 共享模型之内存)

并发编程JUC-共享模型之内存

2022-08-19 10:25:32 82

原创 并发编程(第四章 共享模型之管程)

并发编程之管程

2022-08-18 14:38:01 128

原创 并发编程(第三章 Java线程)

JUC之java线程

2022-06-15 22:42:09 70

原创 线程池原理(第一讲)

线程池的执行流程

2022-06-11 15:40:24 319

原创 并发编程(第二章 进程与线程)

文章目录2.1概念2.1.1进程2.1.2线程2.1.3二者对比2.2并行与并发2.3应用2.3.1 应用之异步调用(案例1)1、设计2、结论2.3.2 应用之提高效率(案例2)1、设计2、结论章节内容1、进程和线程的概念2、并行和并发的概念3、线程基本使用2.1概念2.1.1进程1、程序由指令和数据组成,但这些指令要运行,就必须将指令加载至CPU,数据加载至内存。在指令运行过程中还需要用到磁盘、网络等设备。进程就是用来加载指令、管理内存、管理IO的;2、当一个程序被运行,从磁盘加载这

2022-05-09 23:17:42 67

原创 并发编程(第一章 概述)

1.1 这门课程讲什么这门课中的并发一词涵盖了在java平台的进程线程并发并行以及java开发工具、并发问题以及解决方案,同时也会设计一些其他领域的开发。1.2 为什么学这门课应用层开发基本都是增删改查,但很多技术的底层都会设计到并发的知识(比如:tomca服务器,rpc框架dubbo,消息中间件rabbitmq等等)。1.3 课程特色以并发、并行为主线,穿插讲解。1.4 预备知识1、不是初学者2、线程安全问题,需要你接触过java web开发、jdbc开发、

2022-05-08 15:50:18 150

原创 linux下vi编辑器方向键变成字母的解决方法

一、现象:最近部署系统安装linux系统后,使用vi编辑器编辑文件时,使用方向键盘时光标没有移动,而是在页面打印ABCD等字样,并且删除键盘也不起效。二、原因:这个问题的最终原因是linux系统默认安装的vi编辑器,vi程序默认使用【h】【j】【k】【l】来移动光标,而我们平常习惯方向键盘移动光标是vim编辑器的使用操作。三、解决方案:安装vim编辑器就好(两步命令)。命令一:apt-get remove vim-common (卸载系统自带的vi编辑器)命令二:apt-get in

2022-03-27 13:07:55 5893 3

原创 java连接rabbitmq报错IOException和ShutdownSignalException

问题分析:java连接rabbitmq配置有问题解决方案:1、查看ip地址正确性2、查看端口正确性(很容易和网页端口混乱)3、查看用户名正确性4、查看密码正确性注意:rabbitMQ 默认端口 15672 为网页管理5672 为 AMQP端口(也就是java连接端口)...

2022-03-15 22:55:23 132

原创 Caused by: java.lang.IllegalStateException: Failed to introspect Class

1、问题报错如下:Caused by: java.lang.IllegalStateException: Failed to introspect Class [com.jeequan.jeepay.components.mq.vender.rabbitmq.RabbitMQBeanProcessor] from ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]2、问题解析:意思是:未能反射rabbitmq类包(就是添加了依赖没加载进去

2022-03-15 22:30:27 19639

原创 macbook的vi命令配置高亮

1、打开命令行进入以下目录cd /usr/share/vim2、在当前目录下有一个vim82文件(此文件后面数字随着时间推移会变大),然后查看colors中有哪些配色方案即可(后面的配色需用此下的配色)ls vim82/colors3、在用户根目录~新建一个 .vimrc 文件(如果有则不需再次创建),创建命令示例如下:vi .vimrc4、在上面新建的文件夹中输入以下命令(desert就是上面查询出方案中的一种)“设置可以修改(此处注释需用”,不然会报错):syntax on

2022-03-15 11:32:16 152

原创 按esc键后再按:左下角不显示:问题

1、问题:linux系统使用vim命令编辑完文件,按esc键后,再按“:”,如果左下角并没有显示“:”的情况2、解决方案:切换输入法:将输入法换为英文模式

2022-03-03 20:06:06 40

原创 Scala(第十一章 泛型)

文章目录11.1 协变和逆变11.2 泛型上下限11.3 上下文限定11.1 协变和逆变1)语法class MyList[+T]{ //协变} class MyList[-T]{ //逆变}class MyList[T] //不变2)说明协变:Son 是 Father 的子类,则 MyList[Son] 也作为 MyList[Father]的“子类”。逆变:Son 是 Father 的子类,则 MyList[Son]作为 MyList[Father]的“父类”。不变:Son 是 Fa

2022-02-17 21:24:09 101

原创 Scala(第十章 隐式转换)

文章目录10.1 隐式函数10.2 隐式参数10.3 隐式类10.4 隐式解析机制当编译器第一次编译失败的时候,会在当前的环境中查找能让代码编译通过的方法,用于将类型进行转换,实现二次编译10.1 隐式函数1)说明隐式转换可以在不需改任何代码的情况下,扩展某个类的功能。2)案例实操需求:通过隐式转化为Int类型增加方法。class MyRichInt(val self: Int) { def myMax(i: Int): Int = { if (self < i) i e

2022-02-17 21:16:19 93

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除