- 博客(138)
- 收藏
- 关注
转载 系统运维系列 之java获取本月开始时间和结束时间等的方法
java获取本月开始时间和结束时间、上个月第一天和最后一天的时间以及当前日期往前推一周、一个月
2023-07-18 12:42:12
4250
原创 系统开发系列 之Java8新特性关于流Stream的应用
1)Java8 Stream对两个 List 遍历匹配数据(id匹配):取两个list的id,通过id比较获取id的交并差集,再通过一次获取list对象里面的交并差集元素。1)更加高效:流式处理的一些操作,如过滤、映射等可以在处理过程中进行并行处理,充分发挥多核处理器的性能,从而提高程序的运行效率。2)惰式执行:stream上的操作并不会立即执行,只有等到用户真正需要结果的时候才会执行。3)更加简洁:可以极大提高Java程序员的生产力,让程序员写出高效率、干净、简洁的代码。
2023-07-15 15:07:22
229
转载 系统运维系列 之Java中对一个List对象做分组操作
Java中对一个List对象做分组操作,如果只是分组已经完成,如果想对分组数据做合并操作可以枚举分组后的LIst。
2023-06-24 16:18:22
389
转载 系统运维系列 之将Tomcat添加进服务启动
进入tomcat安装目录的bin位置下,在命令提示符中输入,service.bat install。
2023-06-19 20:47:48
1238
转载 系统运维系列 之linux中通过sed命令直接修改文件内容
sed是实现对流的编辑。通常,我们使用sed可以实现内容的编辑后然后保存成另外的一个文件,如果正确的话,才写入到源文件。但是某些时候,我们需要直接修改文件,因为,保存文件到一个文件,然后再覆盖原文件的办法显得很麻烦。
2023-02-19 13:16:07
409
1
转载 数据仓库系列 之SQL中row_number() over (partition by)的详解
row_number 语法ROW_NUMBER()函数将针对SELECT语句返回的每一行,从1开始编号,赋予其连续的编号。在查询时应用了一个排序标准后,只有通过编号才能够保证其顺序是一致的,当使用ROW_NUMBER函数时,也需要专门一列用于预先排序以便于进行编号。
2023-01-04 16:20:31
3771
原创 系统开发系列 之WebService(spring框架+maven+CXF框架)部署问题及解决方案
系统开发系列 之MyEclipse创建WebService详细教程和调用教程(spring框架+maven+CXF框架)主要介绍使用spring框架+maven+CXF框架实现WebService的开发,使用CXF框架创建调用接口等。本篇内容主要介绍WS服务线上部署的问题及解决方案。
2022-12-16 12:47:04
384
转载 数据仓库系列 之使用PreparedStatement执行批量插入sql的三种方式
使用PreparedStatement执行批量插入sql的三种方式以及效率。
2022-12-13 12:46:50
590
原创 系统开发系列 之MyEclipse创建WebService详细教程和调用教程(spring框架+maven+CXF框架)
使用spring框架+maven+CXF框架实现CXF框架调用接口
2022-11-06 11:06:41
615
转载 系统开发系列 之Java中打印日志的几种方式
项目同时导入log4j 和commons-logging的jar 包, 不需要配置commons-logging.properties ,只需要在classpath中配置 log4j.properties就可以使用log4j的方式记录日志。org.apache.commons.logging.impl.SimpleLog common-logging自带日志实现类。org.apache.commons.logging.impl.NoOpLog common-logging自带日志实现类。
2022-11-05 17:37:57
3886
转载 系统开发系列 之MyEclipse创建WebService详细教程和调用教程
MyEclipse创建WebService最详细(避坑)教程MyEclipse搭建Web Service项目
2022-11-01 22:15:49
161
原创 系统开发系列 之java反射以及应用
反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。
2022-09-04 16:19:42
195
原创 系统运维系列 之CSV文件读取时内容中包含逗号的处理方法
CSV文件默认逗号分隔,但是如果在内容中包含逗号,则会导致分隔失败或者数组下标匹配越界的问题。
2022-08-02 13:52:12
5483
转载 数据分析系列 之3σ规则/依据拉依达准则来剔除异常值
3σ原则为数值分布在(μ-σ,μ+σ)中的概率为0.6827数值分布在(μ-2σ,μ+2σ)中的概率为0.9545数值分布在(μ-3σ,μ+3σ)中的概率为0.9973可以认为,Y 的取值几乎全部集中在(μ-3σ,μ+3σ)区间内,超出这个范围的可能性仅占不到0.3%....
2022-07-04 16:17:41
1653
转载 系统开发系列 之web开发中cookie、session和token的使用
1 介绍客户端与服务端请求响应的关系:USER(客户端) 请求 tomcat(服务器), 属于HTTP请求。http请求是无状态的,即每次服务端接收到客户端的请求时,都是一个全新的请求,服务器并不知道客户端的历史请求记录;所以当用户从客户端请求一次登录后,登录成功,再次进行请求时,因为tomcat不能识别这两次会话都是来自同一个浏览器,即服务端不知道客户端的历史请求记录;就会再次弹出登录对话框。会话:可以理解为用户打开浏览器,访问该web服务器的多个资源,然后关闭浏览器,这中间的一系列过程称之为一个会
2022-05-30 12:18:21
388
原创 框架学习系列 之Struts2框架学习总结
1 介绍学习和使用Struts2框架有了一段时间,这里将学习心得总结在博客的文章里面。期间也参考学习了其他优秀的文章,如有错误之处欢迎指正,转载请申明原文地址,希望大家支持,谢谢。2 What:什么是Struts2框架Struts2 是 Apache 软件组织推出的一个相当强大的 Java Web 开源框架,本质上相当于一个 servlet。Struts2基于MVC 架构,框架结构清晰。通常作为控制器(Controller)来建立模型与视图的数据交互,用于创建企业级 Java web应用程序。 拥有优
2022-05-27 20:43:00
333
原创 办公软件系列 之excel应用4
1 介绍接【办公软件系列 之excel应用1】博客中介绍的内容。2 问题这次是csv文件中时间格式的问题,示例如下:我们还是想按照要求转化为通用数据格式:yyyy-mm-dd hh:mm:ss3 步骤采用标识符分隔的形式分别整到不同的单元格内,然后按照文本的拼接方法整到一块;如:这里前面的日期有可能没有按照yyyy-mm-dd的格式,而是yyyy-m-d,这时可以做接下来的转化:最后再将日期和时间拼成一个字符串形式。4 函数Text函数:根据指定的数值格式将数字转换为文本。经过T
2022-05-27 16:42:28
271
转载 数据仓库系列 之Clickhouse中的更新和删除操作
测试数据select count(*) from system.columns where table='test_update';select count(*) from test_update;具体删除&更新实现语法 如下:ALTER TABLE <table_name> DELETE WHERE <filter>;ALTER TABLE <table_name> UPDATE col1 = expr1, ... WHERE <filter
2022-05-27 12:55:07
2179
4
原创 系统运维系列 之记载一次windows系统下tomcat启动报错的问题
1 问题简介最近遇到一个问题,在windows系统下部署tomcat项目,cmd命令启动时频繁报错,比如Unsupported major.minor version 52.0,且cmd界面上打印出来的日志为乱码;最后在关闭tomcat时发现关不掉,出现项目挂起但是无法关闭的问题。2 Unsupported major.minor version 52.0分析:比较普遍的问题,简单来说,就是执行代码的jdk版本低于编译的jdk版本,对于Spring项目来说,排查步骤如下:查看项目中的jdk版本;修
2022-05-27 11:28:16
544
转载 系统运维系列 之Clickhouse数据类型整理
Clickhouse支持的数据类型在 system.data_type_families 表中检查数据类型名称以及是否区分大小写,这个表中存储了 ClickHouse 支持的所有数据类型。select * from system.data_type_families limit 10;Int说明ClickHouse 中整形分为 Int8 、 Int16 、 Int32 、 Int64 来表示整数不同的取值范围,其末尾数字正好代表占用字节的大小( 8 位 =1 字节),整形又包含有符号整形和无符。
2022-05-25 21:00:27
279
转载 系统运维系列 之greenplum vacuum清理删除数据命令
1 PostgreSQL清理表膨胀之vacuumPostgreSQL的表膨胀清理就需要依赖vacuum,vacuum的主要任务就是清理表和索引中不需要的数据(dead tuples),为新加入的数据清理出来空间。 vacuum完成清理工作后,那些空间并没有真正被释放给操作系统,只能被vacuum清理过的表和索引所利用。2 PostgreSQL清理表膨胀之vacuum fullVacuum Full和Vacuum最大的不同就是,Vacuum Full是物理删除dead tuples,并
2022-05-24 14:08:26
1032
转载 系统运维系列 之greenplum常用的toolkit和catalog监控语句
1 表膨胀相关查询-- 该视图显示了那些膨胀的(在磁盘上实际的页数超过了根据表统计信息得到预期的页数)正规的堆存储的表。select * from gp_toolkit.gp_bloat_diag;--所有对象的膨胀明细select * from gp_toolkit.gp_bloat_expected_pages;2 表倾斜的相关信息-- 该视图通过计算存储在每个Segment上的数据的变异系数(CV)来显示数据分布倾斜。select * from gp_toolkit.gp_skew_c
2022-05-24 10:52:14
250
原创 系统运维系列 之MySQL部分学习整理5
1 应用场景在mysql数据库中查找数据,要求是数据为日期不连续数据,输入一个日期查询日期所在周指定周几的数据和上几周对应时间段数据(一个月内)。关于此问题网上资料未曾有明确的解决方案,本篇博客整理相关解决流程。2 解决方案2.1 数据库查询全量数据,在业务层做相关筛选(这里不在赘述相关方法)。2.2 数据库中直接按照要求查询相关数据。step1 按照要求取指定周几的日期--+0代表取输入日期当周的周一,-1代表周二...-6代表周日,依次类推--含义为取0520这一天所在周的周一对应的日期
2022-05-23 20:05:15
114
原创 框架学习系列 之Spring框架学习总结
学习和使用Spring框架有了一段时间,这里将学习心得总结在博客的文章里面。期间也参考学习了其他优秀的文章,如有错误之处欢迎指正,转载请申明原文地址,希望大家支持,谢谢。
2022-05-22 14:54:51
642
转载 系统运维系列 之IP地址和子网划分介绍
1 简介接上一篇博客:关于A类,B类,C类IP地址的网段和主机数的计算方法2 详细内容(1) 子网掩码IP地址是以网络号和主机号来标示网络上的主机的,我们把网络号相同的主机称之为本地网络,网络号不相同的主机称之为远程网络主机,本地网络中的主机可以直接相互通信;远程网络中的主机要相互通信必须通过本地网关来传递转发数据。(2) 子网掩码的概念及作用子网掩码(Subnet Mask)又叫网络掩码、地址掩码,必须结合IP地址一起对应使用;只有通过子网掩码,才能表明一台主机所在的子网与其他子网的关系,使
2022-05-20 10:11:55
227
原创 系统运维系列 之java中需要转义的特殊字符
在Java中,不管是String.split(),还是正则表达式,有一些特殊字符需要转义,这些字符是:( [ { / ^ - $ ¦ } ] ) ? * + . 转义方法为字符前面加上"\",这样在split、replaceAll时则不会报错;//replace和replaceAll区别://replace的参数是char和CharSequence,既可以支持字符替换,也可以支持字符串替换;//replace
2022-05-18 16:29:24
2230
原创 系统运维系列 之Clickhouse数据库学习集锦(增删改查操作)
1 简介本篇内容涉及一些增删改查操作,包括数据库、表,重点介绍字段的增加/删除操作,其中包含的内容均实际测试通过。2 Clickhouseclickhouse是一款MPP架构的列式存储数据库,它拥有完备的管理功能,所以它称得上是一个DBMS,而不仅仅是一个数据库。它具备了如下的基本功能:(1) DDL:可以动态创建、修改或者删除数据库、表、视图,无需重启服务;(2) DML:可以动态查询、插入、修改或者删除数据;(3) 权限控制:可以按照用户粒度设置数据库或者表的操作权限,保障数据的安全性;(
2022-05-17 14:44:09
1943
原创 系统运维系列 之异常抛出后代码执行问题(java应用)
1 问题描述throw new Excpetion()之后,程序并没有向下继续运行,抛出异常后直接跳出,后面的功能不再执行。//抛出异常:Exception in thread "main" java.lang.NumberFormatException//不会执行后面的输出语句public static void main(String[] args) { String s = "a1b2c3"; if(s.equals("a1b2c3")) { throw new NumberFormat
2022-05-16 14:09:27
1294
原创 系统运维系列 之HashMap底层实现原理和应用
1 介绍(1)HashMap是Java中最常用的集合类框架,也是Java语言中非常典型的数据结构;(2)HashMap是基于哈希表的Map接口的非同步实现。元素以键值对的形式存放,并且允许null键和null值,因为key值唯一(不能重复),因此,null键只有一个;(3)HashMap不保证元素存储的顺序;(4)HashMap是线程不安全的。2 HashMap的默认负载因子是0.75,而不是0.5或者是整数1呢?临界值(threshold) = 负载因子(loadFactor) * 容量(c
2022-05-14 20:45:28
332
原创 系统运维系列 之容器为空和为null的区别
1 概述本篇博客接上一篇博客:系统运维系列 之java.lang.NullPointerException出现原因研究和解决方案分析继续探讨容器为空和为null的区别。2 主要内容(1) 指针异常都是因为调用null对象的方法,就是一个对象还没有没有正常初始化 就先调用它的方法;程序在使用或访问一个对象的引用时,而该对象等于null则被抛出。(2) Java中新建一个list对象,默认值是空,而非null;而当我们连接数据库查询返回集合,当没有查询到数据时,返回的集合便是null。(3) 使用
2022-05-13 20:40:18
1210
转载 数据分析系列 之根据经纬度计算两点之间的距离
1 基础知识:地球半径:由于地球不是一个完美的球体,所以并不能用一个特别准确的值来表示地球的实际半径,不过由于地球的形状很接近球体,用[6357km] 到 [6378km]的范围值可以涵盖需要的所有半径。2 Java实现代码:public final class DistanceUtils { /** * 地球半径,单位 km */ private static final double EARTH_RADIUS = 6378.137; /**
2022-05-07 20:49:44
269
原创 系统运维系列 之java中实现多线程的方式补充
1 介绍接本专题博客之 系统运维系列 之java中实现多线程的方式 上篇博客提到多线程使用的4种方式,分别是:实现方式1:继承Thread类,重写该类的run方法;实现方式2:实现Runnable接口,并重写该接口的run()方法;实现方式3:通过Callable和FutureTask创建线程;Callable接口实际上是属于Executor框架中的功能类,Callable接口与Runnable接口的功能类似,但提供了比Runnable更加强大的功能;Callable可以在任务结束的时候提供一
2022-05-06 11:31:39
121
原创 人工智能系列 之机器学习DBSCAN聚类算法
1 介绍DBSCAN(Density-Based Spatial Clustering of Applications with Noise)是一个出现得比较早(1996年),比较有代表性的基于密度的聚类算法。DBSCAN能够将足够高密度的区域划分成簇,并能在具有噪声的空间数据库中发现任意形状的簇。聚类的时候不需要预先指定簇的个数,最终簇的个数不确定。DBScan需要二个参数: 扫描半径 (Eps)和最小包含点数(MinPts)。DBSCAN算法将数据点分为三类:(1)、核心点:在半径Eps内含有超
2022-05-04 11:31:04
2186
原创 系统运维系列 之Clickhouse数据库学习集锦(接查询优化问题整理)
1 简介ClickHouse是一个用于联机分析 (OLAP)的列式数据库管理系统(DBMS),来自于俄罗斯本土搜索引擎企业 Yandex 公司,是为世界第二大web分析平台(Yandex.Metrica)所开发2016年开源,开发语言是C++,是一款PB级的交互式分析数据库。ClickHouse的性能超过了目前市场上可比的面向列的DBMS,每秒钟每台服务器每秒处理数亿至十亿多行和数十千兆字节的数据。OLAP介绍:OLAP技术主要通过多维的方式来对数据进行分析、查询和生成报表,它不同于传统的OLTP处
2022-05-02 18:07:42
1417
转载 系统运维系列 之Java中synchronized详解及应用
synchronized是Java中的关键字,被Java原生支持,是一种最基本的同步锁。它修饰的对象有以下几种: 1. 修饰一个代码块,被修饰的代码块称为同步语句块,其作用的范围是大括号{}括起来的代码,作用的对象是调用这个代码块的对象。 2. 修饰一个方法,被修饰的方法称为同步方法,其作用的范围是整个方法,作用的对象是调用这个方法的对象。 3. 修改一个静态的方法,其作用的范围是整个静态方法,作用的对象是这个类的所有对象。 4. 修改一个类,其作用的范围是synchronized后面括号括
2022-04-26 20:42:43
131
原创 系统运维系列 之Clickhouse查询优化问题记录整理
ClickHouse 2016年开源的,由俄罗斯IT公司Yandex开发,是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS),而且查询性能优越。主要特点:面向列+向量执行;自己管理存储(非Hadoop);线性可扩展,高可靠(通过shard+replication实现);DDL(数据定义语言):可以动态地创建、修改或者删除数据库、表和视图,而无需重启服务;DML(数据操作语言):可以动态地查询、插入、修改或删除数据;权限控制:可以按照用户粒度设置数据库或者表的操作权限,保障数据的安全
2022-04-26 16:48:37
1468
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人