自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (1)
  • 收藏
  • 关注

原创 mobaxterm配置Tunneling隧道连接服务器

下面给大家介绍Tunneling 隧道功能,通过Tunneling隧道可以在本地直接连接生产服务器B;

2022-08-09 09:45:10 8903 1

原创 mybatis使用demo

pom中导入依赖<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.20</version> </dependency> <dependency> <groupId>c

2021-02-19 11:42:43 168

原创 JDK动态代理-报com.sun.proxy.$Proxy0 cannot be cast to ** 的错误

项目场景:在学习mybatis源码过程中,用到了jdk动态代理,仿照写了一个小demo,发现如下问题问题描述:如下代码抛出类型转换异常:com.sun.proxy.Proxy0cannotbecasttocom.dj.demo.springbootdemo.HandlerMapperProxy0 cannot be cast to com.dj.demo.springbootdemo.HandlerMapperProxy0cannotbecasttocom.dj.demo.springboo

2021-02-19 09:07:58 2789

原创 springboot-集成mybatis-plus

新建springboot工程导入相关依赖 <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.2</version> </dependency> <dependency&g

2021-02-18 11:09:31 373

原创 spring-boot源码学习笔记(1)- springboot 实现自动装配的原理

文章目录原理概述一、@EnableAutoConfiguration说明二、AutoConfigurationImportSelector说明getAutoConfigurationEntry 方法getCandidateConfigurationsSpringFactoriesLoader.loadFactoryNames() 方法总结原理概述通过注解@SpringBootApplication 引入注解@EnableAutoConfiguration, @EnableAutoConfigurat

2021-02-16 23:25:46 145

原创 spring源码学习笔记(1)-环境准备

新建maven工程pom 文件引入spring依赖 <properties> <spring-version>5.2.9.RELEASE</spring-version></properties> <dependencies> <dependency> <groupId>org.projectlombok</groupId>

2021-02-09 14:19:23 84

原创 redis 集群批量删除 某些key

redis单点情况验证:插入数据10.20.26.92:7000> set test/s1 110.20.26.92:7000> set test/s2 2删除数据redis-cli -h 127.0.0.1 -p 6379 -a 123456 keys "test/s*" |xargs redis-cli -h 127.0.0.1 -p 6379 del上删除命令相当于:redis-cli -h 127.0.0.1 -p 6379 -a 123456 del test/s

2021-02-05 20:49:35 1379 1

原创 find -print0和xargs -0原理及用法

平常我们经常把find和xargs搭配使用,例如:find . -name "*.txt" | xargs rm但是这个命令如果遇到文件名里有空格或者换行符,就会出错。因为xargs识别字符段的标识是空格或者换行符,所以如果一个文件名里有空格或者换行符,xargs就会把它识别成两个字符串,自然就出错了。这时候就需要-print0和-0了。**find -print0表示在find的每一个结果之后加一个NULL字符,而不是默认加一个换行符。**find的默认在每一个结果后加一个’\n’,所以输出结果

2021-02-05 19:57:25 1092

原创 记一次hbase kerberos认证的坑

现象该程序已在多个环境上部署,上线成功,今天在一个新环境中部署,发现出现了kerberos认证不通过的现象,java.io.IOException: Login failure for myuser@example.com from keytab ./user.keytab,已经验证了该认证凭证正常,能正常认证方案参考stackoverflow需要将krb5.conf文件中的参数进行调整...

2020-12-24 22:59:07 1108

原创 arthas + mongo慢日志排查接口性能问题

问题描述线上生产环境某个接口,调用一次需要2s才能返回数据,严重影响客户端体验排查过程1. arthas 定位接口请求耗时下载安装arthas启动arthas执行命令:./as.sh选择对应的进程号 对应的序号跟踪trace在arthas命令框中执行命令:trace按TAB键,控台会将报名给列出来选择指定要跟踪的接口入口方法一致追踪下去,知道能定位主要耗时在哪里,耗时最高的方法会已红色进行标注从图中我们可以看到,这个耗时最高的地方是查询mongoarthas 详细使用方

2020-12-11 00:25:55 585

原创 通过cloudera manager 开启,hbase协处理器Aggregation

现象cdh重新部署,后程序启动后,发现抛出如下异常解决方法开启协处理器,登录cloudera manager,找到habse组件在hbase配置中,搜索coprocessor相关配置项,hbase.coprocessor.region.classes 的输入框中输入:org.apache.hadoop.hbase.coprocessor.AggregateImplementation点击保存,重启habse即可...

2020-11-16 21:46:53 231

原创 java equals == 的区别

#主要区别对于基本类型而言,== 比较的是二者值是否相等,对于应用类型而言,比较的是二者所引用的对象的地址是否相等,即比较二者是否指向同一个对象;equals()是一个方法,只能比较引用数据类型(基本数据类型没有方法)。重写前比较的是地址值,重写后比一般是比较对象的属性。Integer 的equals与==Integer 重写了equals方法,实现源码如下 /** * Compares this object to the specified object. The resul

2020-11-06 00:10:23 106

原创 IDEA intellij 中properties文件中文乱码的处理

intellij默认编码为GBK,而properties编码为UTF-8,导致中文显示乱码解决:注意Transparent native-to-ascii-conversion要勾选上

2020-11-05 18:01:34 239 1

原创 mongo分片原理及部署

概念副本集(Replicat Set)模式1.主服务器负责整个副本集的读写,副本集定期同步数据备份,一但主节点挂掉,副本节点就会选举一个新的主服务器,这一切对于应用服务器不需要关心2.副本集中的副本节点,在主节点挂掉后,通过心跳机制检测到后,就会在集群内发起主节点的选举机制,自动选举一位新的主服务器3.Mongodb 提供了各种开发语言访问 Mongodb replica sets 的驱动程序,所以,访问地址的高可用在客户端访问代码中实现4.Mongodb Replicat sets 同步测试

2020-10-26 07:51:44 930 1

原创 记一次navicate 连oracle填坑经过

现象navicat连接oracle失败,出现异常:ORA-28547: connection to server failed, probable Oracle Net admin error原因oci.dll版本不对。因为Navicat是通过Oracle客户端连接Oracle服务器的,Oracle的客户端分为两种,一种是标准版,一种是简洁版,即Oracle Install Client。而我们用Navicat时通常会在自己的安装路径下包含多个版本的OCI,如果使用Navicat连接Oracle服

2020-10-19 22:34:05 206

原创 搞懂@Controller 和@RestController的区别

@Controller 和@RestController 注解,都可以加在类名上,表明该类为 SpringMVC的Controller对象@Controller使用@Controller 注解,在对应的方法上,视图解析器可以解析return 的jsp,html页面,并且跳转到相应页面若返回json等内容到页面,则需要加@ResponseBody注解@CrossOrigin@Controllerpublic class FileUploadController {//跳转到上传文件的页面@R

2020-09-29 10:44:17 200

原创 记一次oracle 用户被锁的解决全过程

事情经过测试环境oracle 某个用户密码过期要求更新密码遂更新密码,但由于某个程序对应的oracle连接配置没有修改一直用老的密码去连oracle库,导致该用户被锁;于是去找system 用户的密码,该oracle 是祖传了几代的oracle ,通过层层询问多个同事,有同事提供了一个密码,他告诉我不知道有没有被其他变更过,于是用其提供的密码去连,连了几次后,终于system账号也被锁了, sys 用户的连接信息也无人知晓,解决方案通过度娘,得到以下解决方案具体实现过程:(1)sqlplus,以

2020-09-03 20:43:41 489

原创 关于postman打开后,无法显示的解决办法

现象postman打开后,虽然在桌面任务栏中出现,但postman的窗口无法显示解决办法步骤一关闭postman程序步骤二手动重置应用程序的窗口设置。删除请求者.json来自应用程序数据目录的文件,位于:在macOS上:~/Library/Application\Support/Postman在Windows上:C:\Users\Postman\AppData\Roaming\Postman在Linux上:~/.config/Postman步骤三启动postman ,然后就正常显示了

2020-08-30 23:19:04 5592

原创 npm执行命令报无法加载文件 E:\Program Files\nodejs\hui.ps1,因为在此系统上禁止运行脚本

问题描述使用cnpm 命令安装插件时,报如上错误:无法加载文件 E:\Program Files\nodejs\hui.ps1,因为在此系统上禁止运行脚本解决办法以管理员身份打开 cmd窗口,再重新执行命令即可

2020-08-20 21:34:05 314

原创 自定义生成maven脚手架并利用脚手架创建项目全流程

新建样本项目新建项目工程模板,即该工程有那些模块,每个模块有哪些包,pom文件有哪些依赖,却包该工程编译通过添加 maven archetype 插件在父工程pom文件中添加plugin<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-archetype-plugin</artifactId> <version>

2020-07-30 23:10:12 608

原创 java常用模型概述(VO BO DTO PO DAO POJO)

VO(value Object) 表现对象前端界面展示;value object值对象;ViewObject表现层对象;主要对应界面显示的数据对象。用于表示一个与前端进行交互的 java 对象。 VO 只包含前端需要展示的数据即可,对于前端不需要的数据,比如数据创建和修改的时间等字段,出于减少传输数据量大小和保护数据库结构不外泄的目的,不应该在 VO 中体现出来。通常遵守 Java Bean 的规范,拥有 getter/setter 方法。BO(business Object) 业务对象封装对象、复

2020-07-30 22:40:43 312

原创 关于zookeeper启动后找不到jdk的问题

在clouder manager上,发现zookeeper挂了,提示错误为:Error: JAVA_HOME is not set and Java could not be found我到对应服务其上,看了下/etc/profile 里JAVA_HOME的配置却是正确的;然后进到错误的详细日志,发现启动zookeeper时,使用的JAVA_HOME是/opt/bdata/jdk1.8.0_251;而服务器的JAVA_HOME实际路径是: /usr/java/jdk1.8.0_152/;与在每个节

2020-07-13 21:09:06 1721

原创 elasticsearch 集群个节点角色介绍及对硬件配置的要求

在生产环境下,如果不修改elasticsearch节点的角色信息,在高数据量,高并发的场景下集群容易出现脑裂等问题。 默认情况下,elasticsearch 集群中每个节点都有成为主节点的资格,也都存储数据,还可以提供查询服务。这些功能是由两个属性控制的: node.master、node.data ,默认情况下这两个属性的值都是true。node.master:这个属性表示节点是否具有成为主节点的资格,注意:此属性的值为true,并不意味着这个节点就是主节点。因为真正的主节点,是由多个具有主节点资格的

2020-07-09 22:26:32 1234

原创 elasticsearch7.6 单点部署

修改hostsvim /etc/hosts将本机host 配置其中10.20.26.96 node-1创建es用户&赋权useradd espsasswd es输入密码:chmod 777 /home/elasticsearch/deploy/elasticsearch-7.3.2/binchown -R es:es /home/elasticsearch/deploy/elasticsearch-7.3.2/data chown -R es:es /home/elasti

2020-07-02 10:12:46 1077

原创 intellij连接mysql自动生成表对应的bean

要将某个表生成对应的bean总是比较麻烦,需要将表中的字段按照类型一一在java bean中声明,而且还需把下划线型式的字段名转成驼峰型式,对一个大宽表,构建这个bean可能就需要很长时间,还好强大的intellij提供了直接将某张表生成bean的功能,下面以图文的型式说明一下这个功能的使用过程1. 连接数据库点击intellij右侧工具条点击“+”选择对应数据库,这里我生成的是mysql中某张表对应的javaBean输入连接信息需要注意的是,schemas tab 页中的需要勾上 .

2020-06-02 20:06:10 621

原创 类名.class 、Class.forName(“类名全路径”)、类实例.getClass()的区别

在学习spring ioc过程中,回顾了反射技术,发现对这个三种方式生成的Class不是太明白,顾将三种方式的进行整理:类名.classJVM将使用类装载器, 将类装入内存(前提是:类还没有装入内存),不做类的初始化工作.返回Class的对象Class.forName(“类名全路径”) (包名+类名)装入类,并做类的静态初始化,返回Class的对象实例对象.getClass()对类进行静态初始化、非静态初始化;返回引用运行时真正所指的对象实验代码:public class ClassLo

2020-05-31 17:13:46 1442 1

Cohort模型.docx

Cohort Analysis是一个最常用的分析工具,Cohort其实是一个组群的意思, Cohort Analysis就是分组分析,也可以叫做同期分析。Cohort分析通过对性质完全一样的可对比群体的留存情况的比较,来发现哪些因素影响短、中、长期的留存。Cohort分析受到欢迎的另一个原因是它用起来十分简单,但却十分直观。相较与比较繁琐的损失分析,RFM或者用户聚类等,Cohort只用简单的一个图表,甚至连四则运算都不用,就直接描述了用户在一段时间周期(甚至是整个LTV)的留存(或流失)变化情况。

2020-08-02

空空如也

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

TA关注的人

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