自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

胖墩的IT博客

大学生正在初步的写博客

  • 博客(251)
  • 论坛 (1)
  • 收藏
  • 关注

原创 Spring boot整合ElasticSearch6.3.2(查询SQL语句关键字与ElasticSearch6.3.2 API对应)

文章目录前言一、spring boot配置文件1、pom文件2、Application.yml中的配置二、查询语句和SQL做对比1、字段函数统计,就是count(字段)2、where语句(1)等于(2)大于等于(3)小于等于(4)大于(5)小于(6)时间范围(7)不等于(8)模糊匹配(9)and(10)or(11)and和or混用(12)in3、group语句4、having语句5、降升排序,多字段排序(1)不分组排序(2)分组后再求和,每个组按求和值排序前言ElasticSearch的版本是6.3.

2020-11-21 18:58:31 12

原创 es6.8增删改查基本操作

目录前言1、 创建1、创建一个新的索引2、 添加1、 指定id插入数据2、不指定id插入数据3、 如果此id存在则不插入,4、 设置添加文档的超时时间3修改1、更新文档中的某个字段2 、添加索引中的字段映射3、 修改索引中的字段映射4、 通过查询修改文档5、 删除1、 删除文档2、 删除索引3、 按查询结果删除索引、类型、文档6、查询1、 查询某索引/类型下所有的文档2、根据id查询某个文档3、查询是否存在此索引4、获取文档的指定字段的内容5 只获_source的内容6、用一个查询对多个文档进行不同的

2020-11-21 17:14:00 13

原创 ES2中关于索引模板的操作

文章目录前言一、 创建一个新的索引模板二、 查看索引模板1、 查看所有模板2、 查看指定的模板3、 模糊匹配4、 批量查询三、 删除指定模板四、修改模板(相当于整体替换,重置)五、根据索引模板创建索引前言首先这里是关于ES2中对于索引模板的操作记录,对于es6及以上对于索引模板的操作和结构可以看下面的的链接elastic中es6教程关于索引模板的部分es6以前和es6以后索引模板结构的区别一、 创建一个新的索引模板put _template/模板名称{ "template": "索

2020-10-27 00:27:52 16

原创 ES2对数据的基本操作

目录前言一、 创建1、创建一个新的索引二、 添加1、 指定id插入数据2、不指定id插入数据三、修改1、更新文档中的某个字段2、重置整个文档四、 删除1、 删除文档2、 删除类型3、 删除索引五、 查询1、查询某索引/类型下所有的文档2、 根据id查询某个文档3、 根据特定字段查询前言首先这里是关于ES2的,对ES6及以上的需要看另一篇文章,这个不适合建议大家还是去Elastic的ES2教程看看细节,这里只是初步的记录一下下面所有的语句都是直接用插件实现的,如果你用http(我是用postman)

2020-10-26 23:59:54 35

原创 windows下ElasticSearch下载和ElasticHD可视化操作工具

介绍es和es在系统中的定位可以看ES基本介绍安装很简单,可以看es安装在windows的步骤可视化工具ElasticHD在windows的安装步骤

2020-09-17 00:23:48 85

原创 spring 注解事务遇到的大坑(查日志报Transaction rolled back because it has been marked as rollback-only,嵌套事务)

说我遇到的问题前请大家回顾一下spring的注解标注事务的几种,主要看标红的,其他的以后项目中用到在说,这个链接有对于嵌套事务的介绍注解解释REQUIRED表示业务方法需要在一个事务中处理,如果业务方法执行时已经在一个事务中,则加入该事务,否则重新开启一个事务。这也是默认的事务传播行为NOT_SUPPORTED声明业务方法不需要事务,如果业务方法执行时已经在一个事务中,则事务被挂起,等方法执行完毕后,事务恢复进行REQUIRES_NEW表明业务方法需要在一个单独的.

2020-09-13 00:10:51 124

原创 多行数字,下一行数是上一行数字的解释(忘了题目了)

public static void main(String[] args){ Scanner scanner = new Scanner(System.in); int num = scanner.nextInt(); if(num==1){ System.out.println(1); return; } if(num<=0){ return;.

2020-08-05 23:36:12 71

原创 spring boot开发mongoDB做文档型数据库存储文档

首先这盘博客是参考SpringBoot Mongodb文件存储服务器,并且修改了原来博客中过时的废弃的方法,并把我实际做的公布出来。一、首先提醒因为我做的是多模块项目,用dubbo,zk实现的微服务,但是因为上传的文件过大,所以肯定不能通过微服务传输数据再到服务的实现类里去上传文件,所以我就在webapp(应该都知道是哪个模块)这个模块直接和mongoDB连接传输文件。二、依赖(都是webapp模块下的) <dependency> <groupId.

2020-05-12 23:29:51 132

原创 前端的input类型中的datetime-local传到后端用LocalDateTime接收

做毕设时也没用别的时间类型的第三方的插件,直接用的\<input type="datetime-local"> 之后直接用ajax把表单提交了,但是后端用LocalDateTime接收的话会报错,如果用@Valid 和BindingResult就可以看到报错信息了,而且也接收不到时间,所以记录一下。通过在字段上加@DateTimeFormat(pattern = "yyyy-MM...

2020-05-06 01:24:37 1726

原创 spring boot项目简单分模块实现和需要注意的地方

这段时间正在写一个人力资源系统的毕设,想着用spring boot做一个分模块的,因为也用到了dubbo,所以分模块扩展性也比较好,正好做一个记录,记录出现的问题,这一篇可能有一些长,只是简单的分模块,主要是布局能互通,本人测试过了,能行,用的注解的方式关于怎么创建spring boot怎么创建分模块的项目,这里不多加说明,网上很多一、整体的项目结构这里简单介绍一下模块的功能:ap...

2020-04-03 02:05:31 106

原创 SpringBoot以freemarker为word的模板下载文件到用户端(2)

这一篇和上一篇word模板下载到本地有一些区别,这里是下载到用户端的浏览器,其实是返回二进制给浏览器一、工具类WordUntilimport com.alibaba.fastjson.JSON;import freemarker.template.Configuration;import freemarker.template.Template;import lombok.ext...

2020-03-15 19:20:59 187

原创 SpringBoot以freemarker为word的模板下载文件到本地(1)

这篇博客是把数据库中的数据在后端拼装成word,下载到本地电脑,不是下载到用户端,区别就是下载到本地的直接到电脑了,下载到用户端的是下载到浏览器上,存储的地方也不一样,下载到本地的你可以指定位置,而下载到用户端的直接看浏览器的存储位置在哪里其实网上有很多这样的教程springboot使用freemarker模板生成word文档这篇文章就可以,一、但是因为升级版本问题,有些已经过时了...

2020-03-15 16:06:25 419

原创 字符串判定为空

在日常工作,学习,比赛中肯定会遇到让你判断是否是空字符串的操作,首先如果要判断一个字符串是否为空你肯定会想到String a;if(a == null && a.length()<1){}或者String a;if(a == null && a.equals("")){}但是如果a字符串是" "呢?里面带一个空格,那上面的就都不会成立但...

2020-01-06 00:19:05 44

原创 java中拆箱和装箱问题

在用包装器类型时,比如Integer和Long等时要考虑区间是否是-127到128,在此区间的比较可以用== 否则要用equals,这是因为java的包装器类型的拆箱装箱问题,当然你也可以自己主动拆箱或者主动装箱...

2020-01-06 00:03:28 67

原创 Junit4的在普通java项目里的运用

这里是以junit4为演示,引入和注解,不用再自己继承测试类了,非常方便一、Junit常用的注解注解解释@Before和setUp()方法功能一样,在每个测试方法之前执行@After和tearDown方法功能一样,在每个测试方法之后执行@BeforeClass在所有方法执行之前执行(注意是在一个测试类的范围)@AfterClass在所有的方法执...

2020-01-05 23:55:42 269

原创 junit简单介绍

整体内容顺序转载自百度百科:junit 下面也添加了自己的见解以前在做单元测试时不怎么注意,感觉单元测试有时候是多余的,但是现在工作了,才知道原来单元测试这么牛逼,虽然简单,但是里面的东西会很帮助我们,如果你现在还只是简单的运用junit,而不是在项目里时刻的用到,那么你可能很牛逼了,竟然靠经验就可以知道这个有没有bug。Junit是一个java语言的单元测试框架,也是回归测试框架,在软...

2020-01-05 17:24:43 35

原创 从网上git项目到本地再到run起来需要的步骤

下面就不写git安装,和合并到自己的编译器上的步骤了,大家可以自行百度,下面都编译器都是按照IDEA来介绍的,如果用其他的也可以1、考虑是否派生一个分支在git一个项目后,你必须要考虑是否派生一个develop分支,如果是你个人的,无所谓,但是如果是一个团队就不行了,git下来的项目是master分支,你修改后再提交可能覆盖别人的代码,而且不能返回到原来的版本关于git的使用和分支问题不...

2019-10-18 21:42:51 1101

原创 有趣的排序

题目:度度熊有一个N个数的数组,他想将数组从小到大 排好序,但是萌萌的度度熊只会下面这个操作:任取数组中的一个数然后将它放置在数组的最后一个位置。问最少操作多少次可以使得数组从小到大有序?解答人的思路是上面出现的前提是每个数字只能移动一次,根据题意移动一次就可以排序成符合题意的答案,最重要的一句话就是检查有多少已经排好序的元素的个数程序:import java.util.Array...

2019-09-16 18:52:58 108

转载 一致性Hash介绍及使用场景

转载自:https://blog.csdn.net/losetowin/article/details/53743135适当做了一些修改1、项目场景(1)单个节点的缓存容量达到上限,无法继续单点增加内存,如何解决?(2)单个节点支撑的QPS(每秒查询率)达到上限,如何解决?2、初步方案增加N个缓存节点,为了保证缓存数据的均匀,一般情况会采用对key值hash,然后取模的方式,然后根...

2019-09-15 18:25:50 356

原创 由Windows虚拟内存导致的长时间停顿(七)

案例介绍: 一个带心跳检测功能的GUI桌面程序,每15秒发送一次心跳检测信号,如果对方30秒以内都没有信号返回,那就认为对方断开连接。程序上线后发现有误报的概率,查询日志发现误报的原因是程序会偶尔出现间隔约1分钟左右的时间完全无日志输出,处于停顿状态因为是左面程序,内存不大(-Xmx256m),所以并没有想是GC导致的程序停顿,但是加入参数-XX:+PrintGCApplicationStopp...

2019-09-13 20:02:42 167

原创 关于JVM中各种参数的总结,调优,分析

下面是关于JVM中的参数解释还有个调优的例子JVM系列三:JVM参数设置、分析下面是JVM中的参数的个人解释,并且说明了该如何选择垃圾回收器JVM调优总结 -Xms -Xmx -Xmn -Xss...

2019-09-13 18:06:08 55

原创 不恰当的树数据结构导致内存占用过大(六)

1、案例介绍:有一个后台PRC服务器,使用64为虚拟机,内存配置为:-Xms4g(设定程序启动时占用内存大小)-Xmx8g(设定程序运行期间最大可占用的内存大小)-Xmn1g(设置年轻代大小为1G)整个JVM内存大小=年轻代大小 + 年老代大小 + 持久代大小下面这个公式没有加上持久代xmx=xmn+老年代大小使用ParNew+CMS的垃圾回收器组合2、出现的问题平时对外...

2019-09-13 18:01:25 216

原创 服务器JVM进程崩溃(五)

1、案例介绍:一个基于B/S的MIS系统,硬件为2个CPU,8GB内存的HP系统,服务器是WebLogic 9.2(其实就是前面那个集群间同步导致内存溢出的那篇),正常运行一段时间后,最近发现在运行期间频繁出现集群节点的虚拟机进程自动关闭的现象,从系统日志中发现,在虚拟机进程崩溃之前都发生了大量相同的异常,如下面:java.net.SocketException:Connection res...

2019-09-13 16:31:05 250

原创 外部命令导致系统缓慢(四)

1、案例介绍运行在一台4个CPU的Solaris 10操作系统上,中间件GlassFish服务器,系统在做大并发压力测试的时候,发现请求响应时间比较慢,通过操作系统的mystat工具发现CPU使用率很高,并且系统占用绝大多数的CPU资源的程序并不是应用系统本身,这是一个不正常的现象,通常情况下用户应用的CPU占用率应该占主导第五位,才能说明系统工作正常2、查看出问题的地方通过Solaris ...

2019-09-13 13:52:19 75

原创 堆外内存导致的溢出错误(三)

案例介绍:一个学校的小型项目:基于B/S的电子考试系统,为了实现客户端能实时地从

2019-09-12 13:53:52 547

原创 集群间同步导致的内存溢出(二)

现在网络发展这么迅速,传统的程序架构已经不适合这个高速发展的时代了,现在基本上都是分布式,微服务,它们之间的端点都是用集群来搭建的,有的消息队列,像kafka,注册中心,像zookeeper都是集群化,更别说缓存(redis),MySQL了,更得集群化啊,其实前面那篇文章用Nginx也与集群化相识,比如Tomcat当服务器,那它就是集群化的Tomcat1、案例介绍:有一个基于B/S的MIS系...

2019-09-11 20:40:13 209

原创 高性能硬件上的程序部署策略(一)

这些案例也是来自于<<深入理解java虚拟机,JVM高级特性与最佳实践>>第二版,来了解实际项目中的具有代表性的问题高性能硬件上的程序部署策略前景介绍: 一个15万PV/天左右的在线文档类型网站最近更换了硬件系统,新的硬件为4个cpu,16GB物理内存,操作系统为64位CentOS 5.4s,Resin作为Web服务器,整个服务器暂时没有部署别的应用,所有的硬件资源...

2019-09-11 17:44:03 190

原创 冒泡排序,选择排序,插入排序,归并排序,快速排序,堆排序,

这里分别用程序来实现这些常见的排序,唉,还是菜,手撕要是写不出来就尴尬了首先一张图来看看都有哪些排序并分析它们来自常见的排序算法有哪些?如何实现这些算法?,可以去看看,里面用动态图介绍了几种排序的逻辑,我这主要是程序为主,关于理念概念什么的可以自行百度了1、冒泡排序通过相邻的两个数进行比较大小,大的换到后面,小的换到前面,这样一轮下来数组中最大的数就被放在了数组的最后一个,第...

2019-09-10 22:16:17 642 1

原创 N叉树的后序遍历

下面这个是leetcode中第590题给定一个 N 叉树,返回其节点值的后序遍历。例如,给定一个 3叉树 :返回其后序遍历: [5,6,3,2,4,1].说明: 递归法很简单,你可以使用迭代法完成此题吗?下面就是一位大神的答案,好理解class Node { public int val; public List<Node> children; ...

2019-09-10 22:15:09 148

原创 Spring中事务的传播性(重点)和隔离性(这个很熟悉,了解一下)

今天面试官问我关于Spring中的事务知道吗?我也不敢托大,就说了一下用注解,还有事务强制回滚(防止物理异常:断电等)现在来看看事务有哪些特性吧1、传播性不知道你考虑过没有,在自己做项目时用的是一个事务包含了执行体的全部,要不都执行,要不都回滚,但是我想在执行体里有两个处理逻辑A和B,A回滚了,但是B可以不回滚,想过没有?当时我想的是try嵌套,现在看人家都已经给你写好了,惭愧传播...

2019-09-02 20:00:53 112

原创 java的线程安全与实现,锁优化

谈论到线程安全肯定就是多线程中的共享的数据的安全,如果不是共享的数据的安全那就是线程安全的,因为在单线程还是多线程中,只要不共享数据,那其他的线程对应此线程没任何影响Java的线程安全对于各种操作共享数据分为5种不可变绝对线程安全相对线程安全线程兼容线程对立(1)不可变这个很好理解,对象或者基本数据类型一经初始化就不再变了,就是不能修改了,关键字final,这个你肯定知道...

2019-09-01 14:37:00 52

原创 java内存模型与线程

在前面已经看了java的内存模型,主要介绍的还是java运行时的内存结构,对于内存模型没怎么涉猎,正好在这里正好详细介绍java的内存模型,并且介绍一下线程,1、主内存和工作内存(1)模型上面这个更详细一些,说明一下,这里的主内存你可以当成进程占领的内存单元,而Save和Load操作只是操作,也相当于主内存和工作内存之间的流程java内存模型规定所有的变量都要存储在主内存中,每条线程...

2019-08-31 15:29:17 66

原创 虚拟机类加载机制

加载只是类加载的一部分,不要搞混了上面最主要的就是前五个:加载、验证、准备、解析,初始化。按部就班开始的顺序是:加载,验证、准备、初始化、卸载。对于解析可以在初始化后再进行,这是为了java语言的动态绑定或者称为晚期绑定,,需要注意的是这五个是按照这个顺序开始的,但不是完成一个再进行下一个,可能交叉进行,通常在一个阶段中调用,激活另一个阶段对于初始化的情况有5种情况必须初始化:遇...

2019-08-30 14:35:08 48

原创 虚拟机性能监控与故障处理工具

这里只是把大纲摆出来,详细的还需要自己百度1、JDK的命令行工具名称工具作用jps虚拟机进程状况工具显示指定系统的指定系统内所有的HotSpot虚拟机进程jstat虚拟机统计信息监控工具用于手机HotSpot虚拟机各方面的运行数据jinfojava配置信息工具显示虚拟机配置信息jmapjava内存映像工具生成虚拟机的内存转储快照(he...

2019-08-30 11:46:08 30

原创 垃圾收集器(GC)和内存分配策略

1、引用引用分为四类(引用强度依次减弱):强引用:new的对象的引用软引用:有用但非必需的对象弱引用:也是非必须的对象,只能生存到下一次垃圾收集发生之前虚引用:幽灵引用或者幻影引用,是否存在此引用对对象没有任何影响,也无法获得实例,唯一的目的就是在这个对象被回收时受到一个系统通知2、扩展垃圾收集算法(1)引用计数法这个了解一下就可以,主流的java虚拟机没有用这个的,因为解决...

2019-08-30 11:31:32 131

原创 java内存区域(内存结构)与内存溢出异常(OOM)

jvm内存模型JVM的内存模型有人也喜欢叫java的内存模型,下面就是显示图(在网上复制的,不自己动手画了,画有可能也没别人的好)上面的图片很形象,每个线程都有自己的工作内存,工作内存可以看成主存的一部分副本(因为不可能主存里的数据它都需要),只需要它需要的放进工作内存供自己使用,当然这部分是私有的(也不确切,还有进程呢)但是如果第一个线程修改一个数据后另一个线程想访问修改后的数据怎么...

2019-08-28 09:50:09 475

原创 经典的面试和笔试问题之扔鸡蛋问题

推荐下面的文章,讲解的很透彻。一篇文章带你搞定经典面试题之扔鸡蛋问题

2019-08-27 13:44:21 82

原创 java8的fork/join模式

https://blog.csdn.net/tyrroo/article/details/81390202

2019-08-26 22:22:07 326

原创 序列化二叉树和反序列化二叉树

题目描述请实现两个函数,分别用来序列化和反序列化二叉树二叉树的序列化是指:把一棵二叉树按照某种遍历方式的结果以某种格式保存为字符串,从而使得内存中建立起来的二叉树可以持久保存。序列化可以基于先序、中序、后序、层序的二叉树遍历方式来进行修改,序列化的结果是一个字符串,序列化时通过 某种符号表示空节点(#),以 ! 表示一个结点值的结束(value!)。二叉树的反序列化是指:根据某种遍历顺序得到...

2019-08-26 20:13:42 209

原创 二叉树按行输出(一层是一行)和按之字型来输出

1、按行输出题目描述从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。解析: 这个和广度优先搜索的区别就是你需要知道那个节点到哪个节点是一行。import java.util.ArrayList;import java.util.LinkedList;import java.util.Queue;/*public class TreeNode { int va...

2019-08-26 13:44:33 286

空空如也

redis雪崩怎么继续执行下去

发表于 2019-09-04 最后回复 2019-09-04

空空如也

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

TA关注的人 TA的粉丝

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