程序设计
文章平均质量分 74
老朱-yubing
这个作者很懒,什么都没留下…
展开
-
带着8个问题5分钟教你学会Arthas诊断工具
Arthas是Alibaba开源的Java诊断工具,深受开发者喜爱。当你遇到以下类似问题而束手无策时,Arthas可以帮助你解决:这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?我改的代码为什么没有执行到?难道是我没 commit?分支搞错了?遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗?线上遇到某个用户的数据处理有问题,但线上同样无法 debug,线下无法重现!是否有一个全局视角来查看系统的运行状况?有什么办法可以监控到JVM的实时运行状态?转载 2023-02-12 17:57:06 · 337 阅读 · 0 评论 -
maven利用springboot的配置文件进行多个环境的打包
maven通过profile实现多环境配置原创 2023-02-03 16:29:59 · 1307 阅读 · 0 评论 -
前端布局神器display:flex
近几年,CSS领域出现了一些复杂的专用布局工具,用以代替原有的诸如使用表格、浮动和绝对定位之类的各种变通方案。Flexbox,或者说是弹性盒子布局模块(Flexible Box Layout Module)是这些新布局工具中的第一个,接着是CSS网格布局模块(CSS Grid Layout Module)。我们会在本文给出一个易于理解的flexbox入门介绍。原创 2023-01-26 09:15:26 · 2990 阅读 · 0 评论 -
使用vs code 编辑调试php 配置
使用vs code调试php程序,vc code相对于phpstorm 启动迅速,调试方便,免费。原创 2017-03-10 22:14:37 · 29369 阅读 · 1 评论 -
超大文件分片断点多线程上传
实现超大文件,分片,断点续传原创 2022-09-08 14:01:08 · 963 阅读 · 0 评论 -
被java调用shell进程,进程僵死搞郁闷了
Java进程执行有一个输入流,两个输出流(相对于外部程序)。当两个输出流有内容输出,而Java执行程序没有及时清空输出流时就会阻塞进程。原创 2022-04-25 17:03:48 · 2032 阅读 · 0 评论 -
html字体文件过大导致加载缓慢如何解决?
在网页设计中,美工通常要求前端使用自己的定义的字体,比如苹果的字体PingFangMedium.ttf, 而实际上除了英文和数字好看外,中文并不好看,特别是windows下,中文发虚。但是字体文件却特别大,因此考虑通过压缩字体, 将汉字这些字符数据从字体中删除以实现压缩,同时生成跨浏览器使用的格式,从而在不影响网页效果的前提下,加快网页响应速度。压缩前字体文件PingFangMedium.ttf高达10.5M字体压缩的原理就是你要使用的字符单独拿出来,不用的就不包含,其中font-sp.原创 2022-03-17 10:43:37 · 4375 阅读 · 0 评论 -
分布式开源性能监控系统Cat安装与使用
服务端篇一、准备环境tomcatmysqljdk8美团cat源码包cat源码 https://github.com/dianping/cat二、开整一直在美团内部使用cat,十分便捷,这次单位内部要使用,拿来研究一番。其实Cat在GitHub上的部署文档已经比较详细了,如果是单机只需要部署一台即可。步骤1: 服务器创建目录mkdir /datachmod -R 777 /data/mkdir -p /data/appdatas/cat/步骤2: 服务器创建文件.原创 2022-03-11 14:37:18 · 2575 阅读 · 0 评论 -
如何使用 apache的POI读取日期格式数据
使用java进行excel读取和写入1.添加处理excel的依赖jar包,直接上pom文件吧<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven..原创 2021-02-22 18:56:28 · 789 阅读 · 1 评论 -
关于请求跨域及response中Set-Cookie无效问题记录
典型的是同一个域名有很多子域名,比如 user.youxr.cn www.youxr.cn比如在 www.youxr.cn/form.php调用user.youxr.cn/login.php需要生成youxr.cn 下都能用的cookie1. 在form.php的请求代码中,需要增加xhrFields: {withCredentials: true} $.ajax({ type: "post", url: "http://user.youxr.cn/?a=login",...原创 2020-10-19 13:55:42 · 1705 阅读 · 0 评论 -
如何处理新版javascript 坑爹的1635排序
在javascript 有一个对象,如果对象的属性是数字,想按照对象定义的属性排序,发现顺序乱了。<script> var test = {"1":"a1","3":"a3","2":"a2"}; for( k in test){ console.log(test[k]); }</script>输出结果如下图,在baidu 也没有好的方法,比如换成二维数组(但是这种数据类型,一般数据库用数字表示id)而且没有直接根据id找到对应的记录...原创 2020-09-07 09:12:36 · 149 阅读 · 0 评论 -
为什么在高并发下很容易就被setInterval给坑了
大多数程序员被setInterval坑了,可能还不知道怎么回事,甚至可能导致雪崩,如何防止雪崩呢? setInterval和setTimeout 又有什么区别呢?原创 2020-06-07 22:48:13 · 670 阅读 · 0 评论 -
如何使用jquery在页面动画显示 加载中效果
互联网应用开发中,最常用的可能就是显示加载中,特别是一些慢的应用,显示加载中,让用户感觉数据正在加载,有利于降低用户焦虑,提升用户体验。如何使用jquery 在页面中显示加载中效果呢?原创 2020-06-06 22:47:53 · 2422 阅读 · 1 评论 -
常用的RPC框架介绍以及示例
RPC简介RPC(Remote Procedure Call Protocol)远程过程调用协议。一个通俗的描述是:客户端在不知道调用细节的情况下,调用存在于远程计算机上的某个对象,就像调用本地应用程序中的对象一样。比较正式的描述是:一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。那么我们至少从这样的描述中挖掘出几个要点: RPC是协议:既然是协议就只是一套规范,那么就需要有人遵循这套规范来进行实现。目前典型的RPC实现包括:Dubbo、Thrift、GRPC、Hetty等原创 2020-05-27 16:49:07 · 2368 阅读 · 5 评论 -
php使用composer
介绍Composer 是 PHP 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。 我们可以在项目中声明所依赖的外部工具库,Composer 会帮你安装这些依赖的库文件,有了它,我们就可以很轻松的使用一个命令将其他人的优秀代码引用到我们的项目中来。只需要项目根目录中一个composer.json即可。a) 你有一个项目依赖于若干个库。b) 其中一些库依赖于其他库。c) 你声明你所依赖的东西。d) Composer 会找出哪个版本的包需要安...原创 2020-05-27 12:02:05 · 491 阅读 · 0 评论 -
简单入门到彻底搞懂防抖和节流
防抖和节流是怎么回事?如何搞懂防抖和节流?如何防抖节流?防抖和节流应用场景是什么样的,防抖和节流应用在什么地方?防抖和节流有什么用途呢?原创 2020-05-19 15:24:10 · 1617 阅读 · 3 评论 -
fiddler 前端开发和http协议分析的瑞士军刀
前端开发利器—FIDDLER1.Fiddler相对其他调试工具的优势Fiddler(中文名称:小提琴)是一个HTTP的调试代理,以代理服务器的方式,监听系统的Http网络数据流动,Fiddler可以也可以让你检查所有的HTTP通讯,设置断点,以及Fiddle所有的“进出”的数据(我一般用来抓包),Fiddler还包含一个简单却功能强大的基于JScript .NET事件脚本子系统,它可以支持众多的HTTP/HTTPS 调试任务。Fiddler官方网站提供了大量的帮助文档和视频教程,这是..原创 2020-05-15 16:13:32 · 440 阅读 · 0 评论 -
基于ssm和Layui快速开发企业应用
CoolJava一、项目说明 CoolJava是一款快速开发模块化脚手架,以Spring MVC为模型视图控制器,MyBatis为数据访问层, Apache Shiro为权限授权层,Ehcahe对常用数据进行缓存,支持redis,目前框架支持mysql,sql server,oracle ,消息队列支持kafka,使用restful开发,前后端分离。 CoolJava主要定位于企业级应用开发,已内置后台管理系统的基础功能和代码生成工具。核心模块包括:组织机构、角色用户、权限授权...原创 2020-05-14 09:54:10 · 654 阅读 · 1 评论 -
centos7下tomcat8部署教程
本文介绍如何在centos7下运行tomcat8服务器,并整合cooljava应用开发框架。原创 2020-05-14 09:37:18 · 930 阅读 · 0 评论 -
完美解决gradle依赖库导致build慢的问题
修改项目下的build.gradle 文件为以下内容。buildscript { repositories {// mavenCentral()// jcenter()// google() maven { url 'https://plugins.gradle.org/m2/' } maven { ur...原创 2020-05-03 20:34:06 · 609 阅读 · 0 评论 -
自动加载,热加载java项目文件
本文开发工具为Idea,eclipse类似 在日常开发中,修改文件,必须重启服务才能生效,这样就大大影响了我们的开发效率。1.对于java等文件修改,tomcat运行在调试模式即可(快捷键shift+f9),修改文件后按ctl+F9在浏览器ctl+F5就可以看更新后的文件。2.对于mybatis,动态加载修改的mapper.xml文件,方...原创 2019-11-06 09:06:55 · 421 阅读 · 0 评论 -
layui大文件分成很多小文件上传
对于很大的文件比如几百M的音频视频 软件上传,如果直接上传 服务器,经常处理不了。可以利用layui,在客户端先把大文件切割成小文件 一个一个上传,然后服务器端,再组合成一个大文件。服务器端讲小文件组合成大文件代码 。文件名 upload.html<?php//处理分片上传文件$status=1;//上传文件要保存的路径$fname = sprintf('/tmp...原创 2019-11-01 11:01:26 · 6529 阅读 · 6 评论 -
centos6 升级最新的开发工具包
历史原因用的centos6的机器太多了,但是开发工具包又太旧,升级开发工具包到c++11 还是很简单的。安装升级工具包源:wget http://people.centos.org/tru/devtools-2/devtools-2.repo -O /etc/yum.repos.d/devtools-2.repo升级源yum upgrade下一步安装 C++11yum install devtoo...原创 2018-03-01 09:23:52 · 1022 阅读 · 0 评论 -
简单的php调试函数
现在浏览器都支持console了,用php调用javascript的console,输出调试信息,还是很方便的。function debug(){ printf('console.log(%s)', func_num_args()>1?json_encode(func_get_args(),256):json_encode(func_get_arg原创 2018-01-10 11:37:31 · 795 阅读 · 0 评论 -
基于jQuery和cropper点击头像上传并预览裁剪图片
使用jquery上传前,预览图片,裁剪,示例使用php接收上传的文件,并且保存为裁剪后的图片。不需要上传后再裁剪图片,只需要本地裁剪好即可,裁剪的时候也可以旋转图片。裁剪控件使用了,cropper。html代码 Document .p10{padding: 10px} .clear::after {height: 0px; cl原创 2017-09-05 16:20:58 · 1452 阅读 · 1 评论 -
生成一个像素的圆角表格/一个像素表格
table{margin:0 auto;}table td{font-size: 14px;color: #333333;border-right: #ccc 0px solid; border-top: #ccc 1px solid;border-left: #ccc 1px solid;border-bottom: #ccc 0px solid;padding: 10px 21px 10原创 2017-01-23 15:46:32 · 951 阅读 · 0 评论 -
html 符号大全
用文字表示图片,不但文件小,而且比图片方便多了。网页特殊符号HTML代码大全HTML特殊字符编码大全:往网页中输入特殊字符,需在html代码中加入以&开头的字母组合或以&#开头的数字。下面就是以字母或数字表示的特殊符号大全。原创 2017-01-23 15:47:57 · 9778 阅读 · 1 评论 -
最简单的圆角列表,圆角看起来还是好看
显示效果如下:.panel { background-color: #fff; border: 1px solid #ddd; border-radius: 5px; overflow: hidden;}.panel .head { color: #333; background-color: #f5f5f5; borde原创 2017-02-09 10:38:40 · 1010 阅读 · 0 评论 -
cordova 默认图标修改
以android为例 在 cordova 项目下修改以下几个文件 ,./platforms/android/res/drawable-ldpi/icon.png (36*36)./platforms/android/res/drawable-mdpi/icon.png (48*48)./platforms/android/res/drawable-hdpi/ic原创 2016-06-23 19:09:54 · 1948 阅读 · 0 评论 -
mac 安装cordova,编译android下面的app
1brew install android-sdk2.修改~/.bash_profile,增加以下2行export ANDROID_HOME=/usr/local/Cellar/android-sdk/24.4.1_1export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools3.需原创 2016-06-23 08:49:37 · 600 阅读 · 0 评论 -
javascript 变态的间隔多少秒执行
一般的语言都有简单的sleep 函数,可是javascript 却连这个函数都没有,实在变态啊。找了半天,下面这个方案 算是最好的吧? 对cpu 的消耗也比较低。<script>//间隔多少毫秒函数function sleep(ms) { return new Promise(resolve => setTimeout(resolve, ms));}async fun...原创 2018-03-31 11:49:04 · 922 阅读 · 0 评论 -
二进制位运算和状态存储
在很多系统的权限/选项设置中 很多都用到了位运算的方法来存储多种标志位。在系统设计中只要是状态只有两种状态(0,1)的都可以用二进制位来表示,如果有多个状态用多个位或者还是新加字段吧。(1)可以节省字段。一个字段只需要一个数字 就可以标识很多种设置和信息。(2)可以处理位置状态需求,而无需更改数据表结构,比如需求增加是否绑定微信。案例:User用户表stat字段#二进制-标志位0000 0000...原创 2018-05-25 08:15:46 · 3836 阅读 · 0 评论 -
使用plupload实现图片比例缩放,压缩。实现文件上传分块,断点续传, 多文件上传
Plupload 是一个界面友好的文件上传插件,可显示上传进度、图像自动缩略和上传分块,断点续传。可同时上传多个文件。 比较好的是 不用修改web服务器配置,就能上传超大的文件, 通过在html页面修改 chunk_size : 这个参数能在客户端将超大的文件,切分成小文件, 然后在服务器再组合起来. plupload支持技术:1:Flash2:Gears3...原创 2018-11-13 10:29:57 · 1776 阅读 · 0 评论 -
最简单的php开发框架
经历过无数多的php框架 , larval, zend framework 等等,都太庞大了.项目运行到最后,往往改的乱七八糟.而且性能极差,无数经验证明, php本身就是最好的框架,但是php代码比较乱, coolphp相当于规范了php编码规范,同时通过基本的类能快速生成代码,极大加快开发速度. 源码目录 https://github.com/robinhunan/...原创 2019-08-06 18:43:07 · 777 阅读 · 0 评论 -
python+selenium 自动登录QQ邮箱例子
1、安裝selenium命令行:pip install selenium 敲回车2、下載chromedriver插件,對應自己的版本,链接在此:http://chromedriver.storage.googleapis.com/index.html直接放在Python的Scripts目录下就可以不能配置变量了,而且也不用声明路径,注意:chrome的版本需要跟driver的版本兼容...原创 2019-02-13 21:47:38 · 2072 阅读 · 0 评论 -
使用php全量备份mysql数据
用了xtrabackup 感觉还是非常不方便,主要是我的数据更新非常非常不频繁,数据量也不大。还是自己重复造轮子,用php写一个全量备份脚本吧,你可能会问我为什么不用mysqldump呢? mysqldump 也能单表备份。主要的一个原因还是mysqldump也不方便,备份的垃圾信息也比较多。用这个脚本定时全量备份一次+mysql的binlog 增量备份,备份的数据通过svn或者rsync...原创 2018-12-11 10:31:44 · 491 阅读 · 0 评论 -
避免刷新,使用server Push发送消息到浏览器
一种方案是使用websocket,客户端和服务器可以直接实现交互,但是一般的服务器并不支持。如果简单实现服务器推送消息,使用html5的服务器推送消息是最简单的。客户端例子<!DOCTYPE html><html> <head> <script type='text/javascript'> var sou...原创 2018-12-06 10:34:46 · 298 阅读 · 1 评论 -
在浏览器中批量下载文件(下)使用nginx在服务器打包下载文件
利用Nginx第三方模块,实现附件打包下载 实现附件的打包下载,需要将一批逻辑上一起的文件,让用户通过一个下载按钮打包下载。首先想到的方案是服务端调用什么zip之类的类库,将文件打包好后返回客户端。但是这样做有一个很明显的问题:文件很多很大的情况下,打包可能会占用大量的内存和cpu,就算在磁盘上构建临时的打包文件,也会增加服务器的磁盘IO负担,而且这些临时的文件无故占用大量的磁盘空间,删除...原创 2018-12-03 21:24:55 · 2710 阅读 · 2 评论 -
电商或财务系统计算钱精度的问题
在财务系统中经常,国内最小是分,比如说一件东西0.58元,如果买一百件那应该是58元吧? 用php表示计算<?phpvar_dump(0.58*100) ;//58?>结果正确,但是在看一下,下面的结果,怎么就变成57了呢?<?phpvar_dump(intval(0.58*100));//57?>是php的bug吗?那让我们再看一下,java...原创 2018-11-19 10:59:57 · 2498 阅读 · 0 评论 -
在浏览器中批量下载文件(上)
一般来说浏览器要同时下载几个文件,比如pdf文件,会在服务器端把几个文件压缩成一个文件。但是导致的问题就是会消耗服务器的cpu和io资源。 那有没有办法,用户点了几个文件,在客户端同时下载呢? 支持html5的浏览器是可以的,html的a标签有一个属性download <a download="下载的1.pdf" href="1.pdf">单个文件下载&...原创 2018-11-21 10:37:13 · 15673 阅读 · 0 评论