- 博客(28)
- 资源 (2)
- 收藏
- 关注
原创 Springboot Redisson自定义注解,自定义自动装配
https://github.com/Pamgo/my-redisson-parent
2020-12-14 21:39:52 747
原创 鸿蒙HarmonyOS应用开发初体验
鸿蒙开发官网1、下载鸿蒙开发工具DevEco-Studio2、创建Harmony空应用例子:窗口一个页面间跳转具体例子地址例子代码最后,可以再工具中进行启动测试:
2021-11-06 11:17:11 216
原创 html转PDF java实现方式(解决中文乱码以及换行问题)
引入最新版本jar即可,地址:https://github.com/flyingsaucerproject/flyingsaucer<dependency> <groupId>org.xhtmlrenderer</groupId> <artifactId>flying-saucer-pdf-itext5</artifactId> <version>9.1.2
2021-04-09 10:11:18 629
转载 Java-Stream流规约、分组、分区
问题引入如果你在做一些汇总操作,比如1、对一个交易列表按货币分组,获取每种货币的和(Map<Cruuency,Integer>) 2、将交易分成贵的、不贵的(Map<Boolean,List<Transaction>>) 3、多级分组,按城市分组,再按贵和不贵分组如果是传统的写法,使用外部迭代即可,会有很多for+if组合,类似:private static void groupImperatively() { Map<Cu.
2021-02-24 15:50:58 1823
转载 while循环&CPU占用率高问题深入分析与解决方案
直接上一个工作中碰到的问题,另外一个系统开启多线程调用我这边的接口,然后我这边会开启多线程批量查询第三方接口并且返回给调用方。使用的是两三年前别人遗留下来的方法,放到线上后发现确实是可以正常取到结果,但是一旦调用,CPU占用就直接100%(部署环境是win server服务器)。因此查看了下相关的老代码并使用JProfiler查看发现是在某个while循环的时候有问题。具体项目代码就不贴了,类似于下面这段代码。while(flag) {//your code;}这里的flag.
2021-01-06 11:57:24 3796 1
原创 SSM整合SpringSession造成的每一分钟刷一次redis-lettuce日志问题
问题:每分钟刷一次2020-12-04 16:23:00[pool-55-thread-1hread][DEBUG]( io.netty.util.internal.logging.Slf4JLogger.debug(Slf4JLogger.java:81))[/127.0.0.1:45030 -> /127.0.0.1:6379] write() writeAndFlush Command Command [type=SMEMBERS, output=ValueSetOutput [outp
2020-12-22 11:22:51 1011
转载 Java并发编程(1)- Callable、Future和FutureTask
撸过JavaSE(即Java基础技术栈)的小伙伴都知道,实现多线程有两种方式,一种是继承Thread,即extends Thread然后实现其中的run()方法;另外一种是实现Runnable接口,即implements Runnable,然后实现其中的run()方法;仔细观察这两种方式,会发现这两者都不能返回线程异步执行完的结果,但在实际项目开发中却偶尔需要获取其中的返回结果,咋办嘞?于是乎Callable和Future就排上用场了,本文我们将对其做一番详尽的介绍!还是先介绍下多线程的传统实现方...
2020-12-21 11:12:53 182
转载 Java并发编程(3)- FutureTask详解与池化思想的设计和实战二
在Java并发编程领域,FutureTask可以说是一个非常强大的利器,它通过实现RunnableFuture接口间接拥有了Runnable和Future接口的相关特性,既可以用于充当线程执行的任务(Runnable),也可以用于获取线程异步执行任务后返回的结果(Future);本文将基于FutureTask实战一个高级案例:设计一款简化版的池容器,以此学习巩固池化思想.在上篇文章中:Java并发编程(2)-FutureTask详解与池化思想的设计和实战一,我们已经从源码的角度结合多线程ThreadP.
2020-12-21 11:06:53 102
转载 Java并发编程(2)- FutureTask详解与池化思想的设计和实战一
在Java并发编程领域,FutureTask可以说是一个非常强大的利器,它通过实现RunnableFuture接口间接拥有了Runnable和Future接口的相关特性,既可以用于充当线程执行的任务(Runnable),也可以用于获取线程异步执行任务后返回的结果(Future);本文将通过剖析解读FutureTask底层相关的核心源码,并基于FutureTask自设计并实战一款“池容器”,即池化思想的设计和实战;在上篇文章中:Java并发编程(1): Callable、Future和FutureTask
2020-12-21 11:01:00 128
转载 如何在 Spring 环境下优雅的实现策略模式
背景最近在忙一个需求,大致就是给满足特定条件的用户发营销邮件,但是用户的来源有很多方式:从 ES 查询的、从 csv 导入的、从 MongoDB 查询….. 需求很简单,但是怎么写的优雅,方便后续扩展,就存在很多门道了。我们的项目是基于 Spring Boot 开发的,因此这篇文章也会基于 Spring Boot 作为基础框架,教你如何使用 Spring 依赖注入的特性,优雅的实现策略模式。1. 简单粗暴最简单粗暴直接的方式莫过于if...else…了,伪代码如下:if(来源 ..
2020-12-19 14:15:52 483 1
原创 Mac系统Redis安装布隆过滤器
Mac系统Redis安装布隆过滤器下载布隆过滤器:地址1、解压RedisBloom压缩包放到系统对应的目录中,如图在当前目录执行命令make得到一个redisbloom.so文件。2、打开mac中的redis安装目录得redis.conf文件,添加配置loadmodule /usr/local/RedisBloom-master/redisbloom.so保存后,退...
2020-04-25 20:47:53 824
原创 SpringBoot2.x日志收集搭建 ELK(7.6.2)+(RabbitMq3.7.16+Erlang 21.0.1)
SpringBoot2.x日志收集搭建 ELK(7.6.2)+(RabbitMq3.7.16+Erlang 21.0.1)rabbitmq-3.7.6 自行到官网下载安装对应的版本以及对应的Erlang可参考地址elasticsearch-7.6.2(下载解压即可)elasticsearch-head(下载解压放到对应目录下,稍后讲解)kibana-7.6.2(下载解压即可...
2020-04-17 11:54:16 783
原创 SpringBoot2.x集成Elasticsearch7.x
项目访问地址:https://pamgo.github.io/byterun/#/2020/elasticsearch/es-jdsearch
2020-04-12 21:39:45 3731
原创 ElasticSearch下载与安装 版本5.6.16 (window版)
## ElasticSearch下载与安装 版本5.6.16 (window版)`涉及软件:jdk1.8以上,node工具,ElasticSearch,ElasticSearch-head`***ElasticSearch5.x版本需要jdk1.8以上支持***linux版本配置jdk1.8版本启动 [linux版本配置jdk版本](!https://yq.aliyun.com...
2020-03-16 22:21:13 778
原创 CentOS7系统巡查脚本,cpu、内存等监控
#!/bin/bash############################################################### File Name: CenOS7.sh# Version: V1.0# Author: # Organization: # Created Time : date# Description:####################...
2019-12-21 13:23:06 1367
原创 ElasticSearch下载与安装 版本5.6.16 (window版)
ElasticSearch下载与安装 版本5.6.16 (window版)涉及软件:jdk1.8以上,node工具,ElasticSearch,ElasticSearch-headElasticSearch5.x版本需要jdk1.8以上支持linux版本配置jdk1.8版本启动 linux版本配置jdk版本一、下载ElasticSearch与安装进入官网版本下载页:下载Elastic...
2019-11-18 09:08:37 896
原创 ElasticSearch 基础学习
ElasticSearch 7.47.4与5.5-6.8的主要区别在于建立索引是是否需要指定类型,前者不需要(默认使用_doc作为类型),后者需要一、基础操作启动elasticSearch-head命令:npm run start访问localhost:9100即可访问到elasticSearch-head启动elasticSearch,window直接双击bin目录下的elasti...
2019-11-03 15:57:25 164
原创 自定义缓存实现
直接上代码:一、定义缓存通用接口package com.example.cache.spring;/** * 定义缓存 * @author OKali * */public interface Cache { // 返回缓存实例名称 String getName(); Object getCacheValue(K key); void setCacheObj
2018-01-27 10:21:30 1739
原创 Spring事务简要笔记
Spring测试:@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration("classpath:xxx.xml")@Resource(name="")Spring事务:逻辑上的一组操作,要么全部成功,要么全部失败Spring事务管理的一组APISpring的编程式事务管理(事务管理模板)1
2015-12-13 12:05:53 360
原创 java_JDBC连接数据库代码大全
#使用JDBC操作数据库 #1、JDBC基础 #JDBC简介:JDBC(Java Database Connectivity)是一种可以执行SQL的Java API,通过它可以用一种API操作不同的数据库. #JDBC驱动:不同数据库间,标准的SQL语句可以移植,而数据库实际通信协议及某些数据库特征不可移植,因此,JDBC和数据库之间须还有一层,用于将JDBC调用映射
2015-11-25 23:08:17 440
java代码实现的微云盘系统(仿百度云)
2016-06-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人