自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(169)
  • 资源 (19)
  • 收藏
  • 关注

原创 mysql: show processlist 详解

最近排查一些MySQL的问题,会经常用到 show processlist,所以在这里把这个命令总结一下,做个备忘,以备不时只需。show processlist 是显示用户正在运行的线程,需要注意的是,除了 root 用户能看到所有正在运行的线程外,其他用户都只能看到自己正在运行的线程,看不到其它用户正在运行的线程。除非单独个这个用户赋予了PROCESS 权限root用户,可以看到全部线程运行情况单独给activiti用户授PROCESS权限,(授权后需要退出重新登录)show process

2022-05-26 15:51:33 3127

转载 mybatisPlus之自动填充工具MetaObjectHandler使用

一. 使用场景MetaObjectHandler是元对象字段填充控制器抽象类,实现公共字段自动写入。比如通常,我们在建表时,会设置几个公共字段:创建人(creator)、更新人(uptater)、创建时间(create_time)、更新时间(update_time)。每次将实体对象新增入库时,都要设置创建人和创建时间;每次更新实体对象时,都要设置更新人和更新时间;如果这是都放在业务代码中,很是繁琐,那么可不可以统一配置,自动帮我们添加这些属性呢?答案就是使用MetaObjectHandler。二.

2022-05-24 16:12:20 3765

原创 AES加密工具类

第一 种方法:AESUtilimport javax.crypto.*;import java.nio.charset.Charset;import java.security.InvalidKeyException;import java.security.NoSuchAlgorithmException;import java.security.SecureRandom;/** * AES加密工具类 */public class AESUtil { public stat

2022-05-16 14:50:06 921

转载 Idea的debug模式断点只能起作用一次的问题

那就是在第一次断点生效的时候,不要点击这个按钮(Alt+F9)继续运行后续代码。正确的做法是按F9键或F8,或点击这里

2022-05-12 21:31:51 2060

原创 JRebel 激活地址

url 地址: http://jrebel.qekang.com/f361d7c3-4364-4070-8eca-357717b3d745邮箱: 自己可用的地址

2022-05-11 21:38:29 910

原创 使用Java下载文件时获取原始文件名

URL url = new URL(urlString);// open the connectionURLConnection con = url.openConnection();// get and verify the header fieldString fieldValue = con.getHeaderField("Content-Disposition");if (fieldValue == null || ! fieldValue.contains("filename=

2022-05-10 09:52:44 2914

原创 分页工具类--内存分页

public class PageUtil { public static <T> List<T> memoryPaging(List<T> dataList, long pageNum, long pageSize) { if (CollectionUtils.isEmpty(dataList)){ return Collections.emptyList(); } if (pageNum

2022-02-07 15:15:30 228

原创 百度搜索技巧

百度搜索技巧

2021-08-31 10:45:32 95

转载 java比较器中的nullsFirst()与nullsLast()

一般的我们对List<Map<XX,XX>>类型排序可以这样写对Score进行排序:List<Map<String, Object>> resultlist = new ArrayList<>(); Map<String, Object> map1 = new HashMap<String, Object>(); map1.put("id", "1"); map1.put(

2021-07-27 11:19:21 299

原创 CopyOnWriteArrayList通过迭代 remove 会抛UnsupportedOperationException

使用CopyOnWriteArrayList删除元素 /** * 测试CopyOnWriteArrayList的remove()方法 */ public static void testCopyOnWriteArrayList() { CopyOnWriteArrayList<String> copyOnWriteArrayList = new CopyOnWriteArrayList<String>(); copyOnW

2021-07-27 10:03:02 884 1

原创 将一组数据平均分成n组

可参考这篇:https://www.codeleading.com/article/73564703440/package com.garfield.collectors.util;import java.util.ArrayList;import java.util.List;import java.util.Map;import java.util.stream.Collectors;import java.util.stream.Stream;import com.google.c

2021-07-20 14:32:40 1119

原创 正则表达式

用户身份证号的正则表达式(15位或者18位,最后一位可以为字母)String expression = "(^[0-9]{15}$)|([0-9]{17}([0-9]|X)$)";

2021-06-22 10:16:38 96

原创 List转Map 注意点

List<UserRsVO> userList = new ArrayList<>(); UserRsVO userRsVO = new UserRsVO(); userRsVO.setId("aa"); userRsVO.setHeadPic("aaaaaa"); UserRsVO userRsVO1 = new UserRsVO(); userRsVO1.setId("aa"); us

2021-05-13 21:20:18 114

原创 打印SQL的xml

xml文件<?xml version="1.0" encoding="UTF-8"?><configuration> <!-- 引用application.properties中的配置 --> <!-- <springProperty scope="context" name="serviceName" source="app.id" defaultValue="handover-nur-ewell"/> -->

2021-03-30 11:14:00 307

原创 项目中统一处理异常的方式

在spring 3.2中,新增了@ControllerAdvice 注解,可以用于定义@ExceptionHandler、@InitBinder、@ModelAttribute,并应用到所有@RequestMapping中。GlobalExceptionHandler 异常处理类import cc.ewell.dripping.product.vitalsigns.exception.BizException;import cc.ewell.dripping.product.vitalsigns.e

2021-02-22 13:43:25 438

原创 解决跨域问题

import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;import com.garfield.brush.interceptor.UserContextInterceptor;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.context.annotation.Configuratio

2021-02-02 10:16:03 96

原创 swagger的使用

1.引入 swagger 的maven 依赖 <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.8.0</version> </dependency>

2021-01-29 17:15:53 121

原创 每周总结 2021/1/18 - 2021/1/24

1. toUpperCase() 的用法把字符串都变成大写toLowerCase()把字符串都变成小写2. Oracle trunc() 函数的用法1.select trunc(sysdate) from dual --2013-01-06 今天的日期为2013-01-062.select trunc(sysdate, ‘mm’) from dual --2013-01-01 返回当月第一天.3.select trunc(sysdate,‘yy’) from dual --2013-01-01

2021-01-19 14:42:19 177

原创 项目中遇到的问题1

spring boot 项目发现 resources 目录下的文件没有编译进去,检查下pom.xml文件检查 的值

2021-01-13 10:45:38 68

原创 docker 进入zookeeper容器内查看已注册的服务

docker ps ,获得容器 iddocker exec -it 容器id /bin/bashzkCli.sh 进入zookeeper的客户端ls /dubbo 查看节点( deleteall /dubbo 清空所有的节点)

2020-12-04 16:39:21 1104

转载 mybatis 自定义拦截器

拦截器注解mybatis自定义拦截器实现步骤:实现org.apache.ibatis.plugin.Interceptor接口。添加拦截器注解org.apache.ibatis.plugin.Intercepts。配置文件中添加拦截器。在mybatis中可被拦截的类型有四种(按照拦截顺序):Executor: 拦截执行器的方法。ParameterHandler: 拦截参数的处理。ResultHandler:拦截结果集的处理。StatementHandler: 拦截Sql语法.

2020-11-30 14:47:12 2510

原创 gradle 打成jar包

本地切换到master,进入项目目录执行的 gradle clean build -x test命令

2020-11-16 16:53:01 204

原创 mysql 连接报错

用户名和密码都是正确的,报这个错误有些客户端能登录 ,登录进去后把这里修改下

2020-11-13 14:52:57 600

原创 Docker

1.命令docker images 列出本地镜像docker ps -a 查看所有的镜像docker ps 查看运行中的镜像

2020-11-03 13:28:25 67

原创 缓存

Redis 的数据结构StringListSetSorted SetHashGeoStreamRedis 实现分布式锁:学习链接

2020-10-21 17:00:14 93

原创 rabbitmq单机到集群完整搭建

RabbitMQ 安装和使用一、安装依赖环境1.在 http://www.rabbitmq.com/which-erlang.html 页面查看安装rabbitmq需要安装erlang对应的版本2.在 https://github.com/rabbitmq/erlang-rpm/releases 页面找到需要下载的erlang版本,erlang-*.centos.x86_64.rpm就是centos版本的。3.复制下载地址后,使用wget命令下载wget -P /home/download htt

2020-09-09 17:40:31 115

原创 常见问题总结一

这个问题,检查配置文件是否配成了"apollo"

2020-09-09 16:36:25 69 1

原创 activemq入门安装

演示环境: Centos7、jdk8、activemq5.15.8下载地址: http://activemq.apache.org/activemq-5158-release.html在liunx 系统下:wget https://archive.apache.org/dist/activemq/5.15.8/apache-activemq-5.15.8-bin.tar.gz解压: tar -zxvf apache-activemq-5.15.8-bin.tar.gz -C /var修改目录名称 m

2020-09-07 15:36:09 64

原创 Java类加载器

JVM三种预定义类型类加载器当JVM启动的时候,Java开始使用如下三种类型的类加载器:启动(Bootstrap)类加载器:启动类加载器是用本地代码实现的类加载器,它负责将JAVA_HOME/lib下面的核心类库或-Xbootclasspath选项指定的jar包等虚拟机识别的类库加载到内存中。由于启动类加载器涉及到虚拟机本地实现细节,开发者无法直接获取到启动类加载器的引用。具体可由启动类加载器加载到的路径可通过System.getProperty(“sun.boot.class.path”)查看。扩展

2020-09-01 14:24:10 74

原创 ForkJoinPool

ForkJoinPool 是Executor接口的实现,它专为可以递归分解成小块的工作而设计。意图梳理:ForkJoin 工作窃取的概念实现思路:并行的请求接口中数据:public class HttpRequestBo extends RecursiveTask<JSONObject> { private ArrayList<String> urlList; private int start; private int end; p

2020-08-31 16:09:44 133

原创 NIO

NIO的三个核心组件:Buffer 缓冲区Channel 通道Selector 选择器Buffer缓冲区Buffer 工作原理代码示例:public class BufferDemo { public static void main(String[] args) { // 构建一个byte字节缓冲区,容量是4 ByteBuffer byteBuffer = ByteBuffer.allocateDirect(4); // 默认写入

2020-08-26 11:24:12 92

原创 BIO

Socket 编程BIO (Blocked IO)BIO 阻塞IO的含 义:服务端代码:public class BIOServer { public static void main(String[] args) throws Exception { ServerSocket serverSocket = new ServerSocket(8080); System.out.println("服务器启动成功"); while (!ser

2020-08-25 15:25:53 87

转载 Java网络编程 -- BIO 阻塞式网络编程

阻塞IO的含义阻塞(blocking)IO :阻塞是指结果返回之前,线程会被挂起,函数只有在得到结果之后(或超时)才会返回非阻塞(non-blocking)IO :非阻塞和阻塞的概念相对应,指在不能立刻得到结果之前,该函数不会阻塞当前线程,而会立刻返回同步(synchronous)IO :应用阻塞在发送或接受数据的状态,直至数据成功传输(或返回失败),简单来说就是必须一件一件事做,等前一件做完了才能做下一件事异步(asynchronous)IO :应用发送或接受数据后立即返回,实际处理这个调用的程序

2020-08-24 15:14:53 162

转载 深入理解Java中的锁(二)

Lock包层次结构Lock 核心的api代码示例:public class GetLockDemo { // 公平锁 // static Lock lock =new ReentrantLock(true); // 非公平锁 static Lock lock = new ReentrantLock(); public static void main(String[] args) throws InterruptedException { // 主线程 拿到锁

2020-08-21 10:58:57 79

转载 深入理解Java中的锁(一)

Java中锁的概念自旋锁 : 是指当一个线程在获取锁的时候,如果锁已经被其他线程获取,那么该线程将循环等待,然后不断判断锁是否能够被成功获取,直到获取到锁才会退出循环。乐观锁 : 假定没有冲突,在修改数据时如果发现数据和之前获取的不一致,则读最新数据,修改后重试修改悲观锁 :假定会发生并发冲突,同步所有对数据的相关操作,从读数据就开始上锁独享锁(写) : 给资源加上写锁,拥有该锁的线程可以修改资源,其他线程不能再加锁(单写)共享锁(读) : 给资源加上读锁后只能读不能改,其他线程也只能加读锁,不能

2020-08-21 10:26:47 77

原创 线程安全之原子操作

原子操作原子性就是指该操作是不可再分的。不论是多核还是单核,具有原子性的量,同一时刻只能有一个线程来对它进行操作。原子操作可以是一个步骤,也可以是多个步骤,但是其顺序不可以被打乱,也不可以被切割而只执行其中的一部分(不可中断性)。将操作视作一个整体,资源在该次操作中保持一致,这是原子性的核心特征。首先我们来看一个非原子操作的示例:public class TestAtomic1 { /** * 两个线程都修改变量 count 的值,看最后count的值是否符合预期

2020-08-21 10:11:17 147

原创 线程池应用及实现原理剖析

为什么要用线程池线程是不是越多好?线程在Java中是一个对象, 更是操作系统的资源, 线程额创建和销毁都需要时间,如果 创建时间+销毁时间>执行任务时间 就很不合算Java对象占用堆内存,操作系统线程占用系统内存, 根据JVM规范,一个线程默认最大栈大小为1M, 这个栈空间是要从操作系统内存中分配的,线程过多会消耗很多的内存操作系统频繁切换线程上下文会影响性能线程池的推出就是为了控制线程数量线程池原理 - 概念线程池管理器:用于创建并管理线程池, 包括创建线程池, 销毁线程池, 添加新

2020-08-20 15:10:31 69

原创 线程封闭

多线程访问共享可变数据时,并不是所有的时候,都要用到共享数据, 所以线程封闭的概念就提了出来。 所谓线程封闭, 就是指数据都封闭在各自的线程之中, 不需要不需要同步。线程封闭的具体的实现主要有ThreadLocal和局部变量ThreadLocalThreadLocal是Java里一种特殊的变量,一个线程级别的变量,每个线程都有一个自己独立的ThreadLocal变量。它的竞争条件被彻底消除, 在并发模式下是绝对安全的。用法:ThreadLocal var = new ThreadLocal();会自

2020-08-20 14:55:40 160

原创 线程通信

线程通信的方式要想实现线程之间的协同, 如: 线程先后执行顺序, 获取某个线程的执行结果等, 涉及线程之间的相互通信, 分为下面四类文件共享网络共享变量共享JDK提供的线程协调API 细分为: suspend/resume , wait/notify, park/unpark文件共享变量共享:线程协作 - JDK API典型场景: 生产者 - 消费者模型 (线程阻塞, 线程唤醒)示例: 线程1区买包子 , 没有包子, 则不执行。 线程2生产包子, 通知线程1继续执行API - 被

2020-08-20 14:48:47 238

原创 线程中止

不正确的线程终止 - stop()stop: 终止线程, 并且清楚监视器锁的信息, 但是可能导致线程安全问题, JDK不建议使用【调用stop()之后,后面的代码不再执行】正确的线程终止 - interrupt()如果目标线程在调用Object class的wait方法, join方法或sleep方法时被阻塞, 那么interrupt会生效, 该线程的中断状态将被清除,抛出InterruptedException如果目标线程是被I/O或者NIO的Channel所阻塞, 同样I/O操作会被中断或者返回

2020-08-20 13:37:02 86

Kotlin 实战 (kotlin in action) 电子书

Kotlin 实战中文版电子书 (《Kotlin 实战》将从语言的基本特性开始,逐渐覆盖其更多的高级特性,尤其注重讲解如何将 Koltin 集成到已有 Java 工程实践及其背后的原理。本书分为两个部分。第一部分讲解如何开始使用 Kotlin 现有的库和API,包括基本语法、扩展函数和扩展属性、数据类和伴生对象、lambda 表达式,以及数据类型系统(着重讲解了可空性和集合的概念)。第二部分教你如何使用 Kotlin 构建自己的 API,以及一些深层次特性——约定和委托属性、高阶函数、泛型、注解和反射,以及领域特定语言的构建。《Kotlin 实战》适合广大移动开发者及入门学习者,尤其是紧跟主流趋势的前沿探索者)

2017-11-10

支持RecyclerView下拉刷新,上拉加载更多

RecyclerView通用的Adapter,支持下拉刷新,上拉加载更多

2016-10-09

ImageView 不同方向的圆角

ImageView 不同方向的圆角,可分别设置上、下、左、右四个方向不同的圆角,也可用作圆形ImageView

2015-09-26

TestEditText

TestEditText设置密码;

2015-09-16

仿QQ群组头像

仿QQ群组头像的设置,只需把ArrayList<Bitmap> 设置进去即可

2015-09-09

仿QQ群组头像的jar

仿QQ群组头像的jar,把bitmap的集合设置进去即可,简单方便

2015-09-09

ImageLoader 实现加载图片,轮播

ImageLoader实现网络图片的加载,用于轮播

2015-05-28

android 获取拍照或本地图片

点击不同的控件,弹出Dialog,选择拍照或从本地获取图片,然后分别显示。

2015-05-12

删除ListView选中的item

点击“清理”后,在每个 item前面显示checkbox用于选中item,点击“删除”清理掉item

2015-05-04

ViewPager用到的图片

ViewPager用到的图片资源(微信底部菜单用到的图片)

2015-02-09

查询访问URL地址所用的时间(可指定访问次数和间隔时间)

查询访问URL地址所用的时间(可指定访问次数和间隔时间)

2014-12-26

ImageLoader

ImageLoader 用于从网络下载图片,内部已封装图片的缓存策略

2014-12-07

测试当前的网速

在android 的项目中,导入jar包测试当前的网速,显示在控件上

2014-12-05

jar转exe转换器

j2ewiz.1.8.2.1.crk.rar(jar格式转exe转换器下载,可自定义图标)

2014-09-09

自定义Dialog

模信QQ退出对话框样式,用自定义的Dialog实现效果。

2014-07-18

python基础知识

Python的基础知识点,主要是从《简明python教程》里提取出来的个人认为比较重要的内容。

2014-07-03

进入Activity实现类似开门的动画效果

类似于进入微信的第一个Activity,实现开门的动画效果

2014-06-10

自定义ProgressBar

定义动画文件,自定义ProgressBar.可用于缓冲时的图片显示

2014-06-05

classes12.jar

运行Oracle数据库,在工程中所需导入的jar包

2014-06-04

空空如也

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

TA关注的人

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