自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 M1芯片macbook idea卡顿,UI拖动卡顿、不流畅问题解决

1.首先现在arm版本的idea2.使用zulu jdk,下载arm版本的3.重点来了,这个时候你还是能明显感觉UI拖动掉帧卡顿,左侧项目栏上下滑动肉眼可见的不流畅,代码提示也迟钝,输入代码明显感觉滞后,这个时候需要在idea中下载一个插件:Atom Material Icons,然后重启试试吧!是不是丝滑流畅了!...

2021-05-12 20:15:00 23228 20

原创 Java实现动态表单

前提 我们的业务上会有各种各样的表单,常规的开发是一个表单,我们一般会在数据库里面建立一个对应的表,然后在代码中建立一个model与之对应,一旦建立好以后,就不能再对表单进行修改了,如果需要修改,就需要修改数据库表,修改model重新发版上线,对于频繁需要表单变更的情况来说很不友好。那么有没有方法可以对现有表单的列进行增删改甚至动态生成一个表单呢?这样的话表单变动就不用发版重新上线了,岂不美哉。解决办法自然是有的。方案 整体思路就是数据库行转列,在java层面动态生成VO返回给前台。...

2020-09-02 11:08:50 9110 4

原创 Java执行Groovy脚本语言

Groovy是什么Groovy是一个功能强大的、动态的基于JVM的脚本语言。强大在哪里,请看下图。更详细的请参考wiki。Java中使用Groovy首先要引入依赖<dependency> <groupId>org.codehaus.groovy</groupId> <artifactId>groovy-all</artifactId> <version>3.0.5</versi.

2020-08-26 11:48:17 888

原创 RPC之一:基于TCP协议实现RPC

先看代码服务接口public interface SayHelloService { String sayHello(String hello);}作为服务提供方,要对服务接口给出实现public class SayHelloServiceImpl implements SayHelloService { @Override public String sayHello(String hello) { if ("hello".equals(hello)) { .

2020-08-26 09:51:15 1319

转载 Java动态追踪技术探究,BTrace、Arthas原理

原文地址:https://my.oschina.net/meituantech/blog/3016523

2020-07-06 10:14:01 1163

原创 start.spring.io访问超时或者失败导致创建Spring Boot项目失败解决办法

基于各种原因吧,使用Spring Initializr创建Spring Boot项目时,使用默认的网址https://start.spring.io/会存在超时、连接失败、创建速度慢等问题,使用阿里的地址替换就可了。阿里地址:https://start.aliyun.com/替换方法如果Next是灰色的点不动的话,左边选项栏里选择其他选项,然后再选择Spring Initializer就可以了。PS:你也可以自己创建一个启动网址,但是不建议,除非你有很特殊的需求,否则费时费力毫无意义。.

2020-07-02 11:26:24 6642 2

原创 Nginx发送HTTP请求拉取后端服务数据完成多级缓存中Nginx应用层的开发和部署

本文是在Nginx+lua实现本地HTML页面动态渲染文章的基础上进行的。在Nginx+lua实现本地HTML页面动态渲染中我们已经解决了在Nginx本地动态渲染HTML以及数据在Nginx中进行存储,现在就来解决下一个问题,在Nginx中向后台服务发送请求获取数据。添加HTTP依赖进入到OpenResty安装目录根目录下的lualib/resty目录下wget https://github.com/ledgetech/lua-resty-http/raw/master/lib/re.

2020-06-27 11:38:11 804

原创 Nginx+lua实现本地HTML页面动态渲染

目标Nginx接到请求后,直接使用自己本地的数据动态渲染到html页面中然后返回给客户端。环境说明操作系统:ubuntu18.04 64bitOpenResty 版本:1.15.8.3为什么是OpenResty想用Nginx做一些个性化的功能,一般都会使用脚本语言Lua,那为啥不是C语言呢?因为C语言难啊!而要使用Lua,lua-nginx-module则是个非常好的Nginx扩展模块,但是它是不随Nginx一同发布的,需要自己手动安装,而OpenResty直接集成了,而..

2020-06-26 01:08:35 2770

原创 OpenResty简介、安装、HelloWord

官方地址:http://openresty.org/cn/OpenResty是什么?OpenResty是一个基于Nginx与 Lua 的高性能 Web 平台,什么意思呢?首先OpenResty是基于Nginx的,也就是内置了一个Nginx,你不用单独部署Nginx,其次OpenResty可以让开发人员使用Lua脚本在Nginx上做开发,不用你做任何额外的配置。OpenResty 能干什么?请求分发、高级缓存机制、直连MySQL、直连Redis、直连消息队列等等。Op...

2020-06-23 14:57:12 396

原创 java应用故障排查常用工具之:jstat

官方文档:https://docs.oracle.com/en/java/javase/14/docs/specs/man/jstat.htmljstat是一个可以用来对虚拟机各种运行状态进行监控的工具,比如查看虚拟机垃圾回收、类加载与卸载情况、内存空间的使用等信息,监视JIT即时编译器的运行情况等,几乎囊括了JVM运行的方方面面。jstat的用法命令格式:jstat[-命令选项][JVM进程PID][间隔时间][查询次数]PS:间隔时间有两种单位秒和毫秒,不加单位默认是..

2020-06-13 21:25:37 287

原创 一步一图,AMD Ryzen虚拟机安装Mac OS 10.14.6,看完保证能成功!

新买了一台联想小新pro13 2020锐龙版,想试一下高分屏幕下Mac OS是否会具有更好的显示效果,所以就用虚拟机装一下Mac OS体验一下,捣鼓了几个小时终于成功。这里把详细步骤写一下,让想简单体验一下Mac OS的朋友少走弯路,少采坑。理论上zen、zen+、zen2都可以安装,Ryzen1600、Ryzen1700、Ryzen2600、Ryzen2700、Ryzen3600、Ryzen3700等应该都没有问题,我的配置是Ryzen 4800U,集成显卡。环境说明虚拟化软件:VMware.

2020-06-13 19:57:46 16134 45

原创 java应用故障排查常用工具之:jinfo

官方文档:https://docs.oracle.com/en/java/javase/14/docs/specs/man/jinfo.htmljinfo命令打印指定JVM进程的配置信息,包括Java系统属性(System.getProperties)以及JVM运行时所指定的JVM参数。jinfo可以使用-sysprops将JVM进程中所指定的System.getProperties的内容打印出来。jinfo可以查看未被显示指定的JVM参数的系统默认值,jps -v 只能查看显示指定的JVM参数。jin

2020-06-11 14:03:23 1657

原创 java应用故障排查常用工具之:JPS

jps命令用来输出JVM进程的一些信息,可以列出当前正在执行的JVM进程,并显示其主类(main函数所在的class)和进程的ID,可以查看JVM参数和main方法入参等。jps本身也是一个JVM进程。jps用法:jps命令的一些选项:-q 只输出JVM进程的PID,省略主类的名称 -m 输出进程启动时传给main函数的参数 -l 输出主类的全类名,如果执行的是jar文件,则输出jar文件的路径 -v 输出JVM进程启动时所带的JVM参数jps用法演示jpsjps -q

2020-06-10 16:47:37 310

转载 JAVA进程突然消失的原因?

引言值此七夕佳节,烟哥放弃了无数妹纸的邀约,坐在电脑面前码字,就是为了给读者带来新的知识,这是一件伟大的事业!好吧,实际情况是没人约。为了化解尴尬,我决定卖力写文章,嗯,一定是我过于屌丝!好了,开始说重点。今天讲的这个问题JVM进程消失可能有哪些原因?这个问题也是面试中经常出现的,如下图所示ps:由于两年多没写crud了,所以忘记mybatis怎么用了,所以上面那个问题,我选择了无视。那我们就开一篇文章说一下这个问题,其实很easy的,无外乎三种情况。linux的OOM...

2020-06-07 11:32:34 1136 1

原创 短链的基本工作原理描述与实现方案

短链是什么短链就是普通的长链(普通URL)网址经过一定的处理得到的一个简短且唯一的网址字符串。短链跳转的基本原理客户端访问短链网址服务器,短链网址服务器返回对应长链地址和302响应码,客户端收到响应后重定向访问长链地址服务器。以腾讯云的短链为例,访问短链:https://url.cn/5y3z8VK可以很清晰的看到整个短链跳转的过程。这里说一下301响应码和302响应码:301代表永久重定向,也就是第一次重定向以后就会从浏览器缓存中获取重定向地址,下次直接访问;30.

2020-06-06 18:04:43 4220

原创 Redis在Ubuntu 20.04 LTS中安装失败问题解决

问题说明redis在Ubuntu 20.04 LTS中安装失败,make出错gcc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb net.cmake[3]: gcc: Command not foundmake[3]: *** [Makefile:156: net.o] Error 127make[3]: Leaving directory '/data/redis-5

2020-06-01 20:54:55 1618

原创 可重用CountDownLatch的实现

可重用CountDownLatch的代码实现  CountDownLatch的底层实现原理本文先不铺开说明,只简略说一些想要达到重用CountDownLatch的目标需要对CountDownLatch源码做哪些修改。CountDownLatch底层使用抽象队列同步器实现,我们创建一个CountDownLatch对象时就会在CountDownLatch的构造函数中创建一个CountDownLatch的私有静态内部类Sync的实例对象,Sync就是AbstractQueuedSynchronizer即抽象队列

2020-06-01 17:29:21 816

原创 Redis生产环境参数调优

1.vm.overcommit_memory 查看当前值:sysctl -a | grep vm.overcommit_memory,默认值为0,可选值有0、1、20:计算是否有足够的可用内存,计算过程比较复杂,有兴趣的自行查阅资料,如果有足够的内存,就分配成功,否则分配失败1:直接分配成功,不做任何判断,直到用完为止2:计算内存总量 * vm.overcommit_ratio/100 + SWAP的总量,如果申请空间超过此值,则申请失败,否则申请成功建议修改为1修改:echo ‘vm.o

2020-05-31 18:48:44 1345

原创 Redis生产环境启动

环境说明  操作系统:Ubuntu 18.04.4 LTS  redis版本:5.0.4安装rediswget http://download.redis.io/releases/redis-5.0.4.tar.gztar xvf redis-5.0.4.tar.gzcd redis-5.0.4make && make installredis-server检查是否能成功启动生产环境启动redisredis的解压目录的utils目录下,有个redis_init_sc

2020-05-31 16:51:46 177

尚硅谷java全套视频

尚硅谷java 全套视频 完整无缺,适合java入门提高。

2017-08-26

愤怒的火柴人C源码

用纯C语言写的一个火柴人小游戏,有简单的图形界面,类似2D平面的跑酷游戏,可用作图形编程的学习

2014-12-13

空空如也

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

TA关注的人

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