自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(464)
  • 资源 (26)
  • 收藏
  • 关注

转载 Nginx服务器中使用lua获取get或post参数

--Nginx服务器中使用lua获取get或post参数local request_method = ngx.var.request_methodlocal args = nillocal param = nillocal param2 = nil--获取参数的值if "GET" == request_method then args = ngx.req.get_uri_ar...

2019-03-01 11:17:16 3264

原创 OpenResty连接Mysql

openresty连接mysqllua-resty-mysql模块的官方文档地址: https://github.com/openresty/lua-resty-mysqllua-resty-mysql - Lua MySQL client driver for ngx_lua based on the cosocket APIlua-resty-mysql模块是基于cosocket A...

2019-02-28 11:54:01 621

原创 Java多线程系列--“JUC锁”04之 公平锁(二)

概要前面一章,我们学习了“公平锁”获取锁的详细流程;这里,我们再来看看“公平锁”释放锁的过程。内容包括: “公平锁”的获取过程请参考“Java多线程系列--“JUC锁”03之 公平锁(一)”,锁的使用示例请参考“Java多线程系列--“JUC锁”02之 互斥锁ReentrantLock”。注意:(01) 这里是以“公平锁”来进行说明。(02) 关于本章的术语,如“AQS”,“CA...

2019-02-25 14:37:43 125

原创 Java多线程系列--“JUC锁”03之 公平锁(一)

目录 概要基本概念ReentrantLock数据结构参考代码获取公平锁(基于JDK1.7.0_40)一. tryAcquire()二. addWaiter(Node.EXCLUSIVE)三. acquireQueued()四. selfInterrupt()概要本章对“公平锁”的获取锁机制进行介绍(本文的公平锁指的是互斥锁的公平锁),内容包括:“公...

2019-02-25 11:22:57 189

原创 Java多线程系列--“JUC锁”02之 互斥锁ReentrantLock

目录ReentrantLock介绍ReentrantLock函数列表ReentrantLock示例本章对ReentrantLock包进行基本介绍,这一章主要对ReentrantLock进行概括性的介绍,内容包括: ReentrantLock介绍ReentrantLock是一个可重入的互斥锁,又被称为“独占锁”。顾名思义,ReentrantLock锁在同一个时间点只能被...

2019-02-25 10:53:01 142

原创 Java多线程系列--“JUC锁”01之 框架

根据锁的添加到Java中的时间,Java中的锁,可以分为"同步锁"和"JUC包中的锁"。同步锁  即通过synchronized关键字来进行同步,实现对竞争资源的互斥访问的锁。Java 1.0版本中就已经支持同步锁了。  同步锁的原理是,对于每一个对象,有且仅有一个同步锁;不同的线程能共同访问该同步锁。但是,在同一个时间点,该同步锁能且只能被一个线程获取到。这样,获取到同步锁的线程就能...

2019-02-21 14:34:47 158

原创 Java多线程系列--“JUC原子类”05之 AtomicLongFieldUpdater原子类

概要AtomicIntegerFieldUpdater, AtomicLongFieldUpdater和AtomicReferenceFieldUpdater这3个修改类的成员的原子类型的原理和用法相似。本章以对基本类型的原子类进行介绍。内容包括: AtomicLongFieldUpdater介绍和函数列表AtomicLongFieldUpdater可以对指定"类的 'volati...

2019-02-21 14:29:59 148

原创 Java多线程系列--“JUC原子类”04之 AtomicReference原子类

概要本章对AtomicReference引用类型的原子类进行介绍。内容包括:  AtomicReference介绍和函数列表AtomicReference是作用是对"对象"进行原子操作。AtomicReference函数列表// 使用 null 初始值创建新的 AtomicReference。AtomicReference()// 使用给定的初始值创建新的 Atomi...

2019-02-21 14:20:35 112

原创 Java多线程系列--“JUC原子类”03之 AtomicLongArray原子类

概要AtomicIntegerArray, AtomicLongArray, AtomicReferenceArray这3个数组类型的原子类的原理和用法相似。本章以AtomicLongArray对数组类型的原子类进行介绍。内容包括:AtomicLongArray介绍和函数列表在"Java多线程系列--“JUC原子类”02之 AtomicLong原子类"中介绍过,AtomicLong是作...

2019-02-21 14:15:37 111

原创 Java多线程系列--“JUC原子类”02之 AtomicLong原子类

概要AtomicInteger, AtomicLong和AtomicBoolean这3个基本类型的原子类的原理和用法相似。本章以AtomicLong对基本类型的原子类进行介绍。内容包括:AtomicLong介绍和函数列表AtomicLong是作用是对长整形进行原子操作。在32位操作系统中,64位的long 和 double 变量由于会被JVM当作两个分离的32位来进行操作,所以不具有...

2019-02-21 13:39:49 114

原创 Java多线程系列--“JUC原子类”01之 框架

根据修改的数据类型,可以将JUC包中的原子操作类可以分为4类。1. 基本类型: AtomicInteger, AtomicLong, AtomicBoolean ;2. 数组类型: AtomicIntegerArray, AtomicLongArray, AtomicReferenceArray ;3. 引用类型: AtomicReference, AtomicStampedRerence...

2019-02-21 13:32:06 120

原创 Java多线程系列--“基础篇”12之 生产消费者问题

目录 概要1. 生产/消费者模型2. 生产/消费者实现概要本章,会对“生产/消费者问题”进行讨论。涉及到的内容包括:  1. 生产/消费者模型生产/消费者问题是个非常典型的多线程问题,涉及到的对象包括“生产者”、“消费者”、“仓库”和“产品”。他们之间的关系如下:(01) 生产者仅仅在仓储未满时候生产,仓满则停止生产。(02) 消费者仅仅在仓储有产品时候才能消...

2019-02-21 09:59:51 105

原创 Java多线程系列--“基础篇”11之 线程优先级和守护线程

目录 概要1. 线程优先级的介绍2. 线程优先级的示例3. 守护线程的示例概要本章,会对守护线程和线程优先级进行介绍。涉及到的内容包括: 1. 线程优先级的介绍java 中的线程优先级的范围是1~10,默认的优先级是5。“高优先级线程”会优先于“低优先级线程”执行。java 中有两种线程:用户线程和守护线程。可以通过isDaemon()方法来区别它们:如...

2019-02-21 08:57:19 131

原创 Java多线程系列--“基础篇”10之 interrupt()和线程终止方式

目录 概要1. interrupt()说明2. 终止线程的方式2.1 终止处于“阻塞状态”的线程2.2 终止处于“运行状态”的线程3. 终止线程的示例4. interrupted() 和 isInterrupted()的区别概要本章,会对线程的interrupt()中断和终止方式进行介绍。涉及到的内容包括: 1. interrupt()说明在介绍...

2019-02-21 08:49:18 221

原创 Java多线程系列--“基础篇”09之 join()

目录 概要1. join()介绍2. join()源码分析(基于JDK1.7.0_40)3. join()示例概要本章,会对Thread中join()方法进行介绍。涉及到的内容包括:  1. join()介绍join() 定义在Thread.java中。Thread.join()把指定的线程加入到当前线程,可以将两个交替执行的线程合并为顺序执行的线程。...

2019-02-21 08:32:21 218

原创 Java多线程系列--“基础篇”08之 线程休眠

目录 概要1. sleep()介绍2. sleep()示例3. sleep() 与 wait()的比较概要本章,会对Thread中sleep()方法进行介绍。涉及到的内容包括: 1. sleep()介绍sleep() 定义在Thread.java中。sleep() 的作用是让当前线程休眠,即当前线程会从“运行状态”进入到“休眠(阻塞)状态”。sleep()...

2019-02-20 16:36:53 488

原创 Java多线程系列--“基础篇”07之 线程让步

目录 概要1. yield()介绍2. yield()示例3. yield() 与 wait()的比较概要本章,会对Thread中的线程让步方法yield()进行介绍。涉及到的内容包括: 1. yield()介绍yield()的作用是让步。使当前线程从执行状态(运行状态)变为可执行态(就绪状态),从而让其它具有相同优先级的等待线程获取执行权;但是,并不能保证...

2019-02-20 16:23:34 290

原创 Java多线程系列--“基础篇”06之 线程等待与唤醒

目录 概要wait(), notify(), notifyAll()等方法介绍2. wait()和notify()示例3. wait(long timeout)和notify()4. wait() 和 notifyAll()5. 为什么notify(), wait()等函数定义在Object中,而不是Thread中概要本章,会对线程等待/唤醒方法进行介绍。涉及到...

2019-02-20 16:18:41 217

原创 Java多线程系列--“基础篇”05之 volatile关键字解析

目录 概要一.内存模型的相关概念二.并发编程中的三个概念三.Java内存模型四.深入剖析volatile关键字五.使用volatile关键字的场景概要volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。...

2019-02-20 16:01:17 245

原创 Java多线程系列--“基础篇”04之 synchronized关键字

目录概要1. synchronized原理2. synchronized基本规则3. synchronized方法 和 synchronized代码块4. 实例锁 和 全局锁概要本章,会对synchronized关键字进行介绍。涉及到的内容包括: 1. synchronized原理在java中,每一个对象有且仅有一个同步锁。这也意味着,同步锁是依赖于对象而存在...

2019-02-19 17:03:45 161

原创 Java多线程系列--“基础篇”03之 Thread中start()和run()的区别

目录 概要start() 和 run()的区别说明start() 和 run()的区别示例start() 和 run()相关源码(基于JDK1.7.0_40)概要Thread类包含start()和run()方法,它们的区别是什么?本章将对此作出解答。本章内容包括: start() 和 run()的区别说明start() : 它的作用是启动一个新线程,新线程会执...

2019-02-19 16:37:35 119

原创 Java多线程系列--“基础篇”02之 常用的实现多线程的两种方式

目录1.Thread和Runnable简介2.Thread和Runnable的异同点3. Thread的多线程示例4. Runnable的多线程示例 概要本章,我们学习“常用的实现多线程的2种方式”:Thread 和 Runnable。之所以说是常用的,是因为通过还可以通过java.util.concurrent包中的线程池来实现多线程。关于线程池的内容,我们以后会详细...

2019-02-19 16:30:08 190

原创 Java多线程系列--“基础篇”01之 基本概念

多线程是Java中不可避免的一个重要主体。从本章开始,我们将展开对多线程的学习。接下来的内容,是对“JDK中新增JUC包”之前的Java多线程内容的讲解,涉及到的内容包括,Object类中的wait(), notify()等接口;Thread类中的接口;synchronized关键字。注:JUC包是指,Java.util.concurrent包,它是由Java大师Doug Lea完成并在JDK...

2019-02-19 16:18:36 166

原创 Java多线程原理分析系列目录(共44篇)

最近,在研究Java多线程的内容目录,将其内容逐步整理并发布。(一) 基础篇01. Java多线程系列--“基础篇”01之 基本概念02. Java多线程系列--“基础篇”02之 常用的实现多线程的两种方式03. Java多线程系列--“基础篇”03之 Thread中start()和run()的区别04. Java多线程系列--“基础篇”04之 synchronized关键字...

2019-02-19 16:16:33 328

原创 Java实现微信公众号扫描二维码未关注时跳转关注界面已关注跳转业务界面

以下只是测试代码写得不太整齐规范,但是主要思路以及要注意的都写了:前提:需要申请认证的微信公众号;获取对应的APPID和APPSECRET;并且还需要获取到用户信息权限(点击“修改“添加服务器的域名地址),前期工作安装测试账号为例给大家展示下:1)、公众测试账号获取  访问上面的连接,选择“接口测试号申请”获得直接打开http://mp.weixin.qq.com/debug/cgi-...

2019-02-16 16:20:42 8456 1

原创 Virtual BOX或VMware和PC宿主机间不插网线通过loopback建立连接解决无网络情况下通信

在之前使用vmware或Virtual BOX的时候会有这样的一个情况:通常情况下大家都是在有网络或是有其它类似于路由器设备或是直接通过网线短接方式下,PC机和虚拟机里的操作系统是可以互相连接,不影响大家开发、调试、实验等。但是也有特殊情况下时,你什么设备都没有时候怎么办,怎样不影响你的工作。由于你的电脑没有通过网线和路由器连接的话会出现PC机的本地连接是断开线缆的情况,这时候PC和vmw...

2019-01-20 10:14:48 1678

转载 90%的 CTO 都做不好绩效管理

IT 技术团队的绩效考核是比较头痛的事情。从技术员工的角度来讲,我和大家一样是很反感绩效考核的,主要原因是技术绩效到底怎样去量化是个难点。但是从管理的角度讲,技术团队必须要有绩效管理机制。技术团队绩效考核的核心,是怎样通过机制(或文化),让技术人员(或技术团队)的行为结果,超越制度创造出更大的价值,而不是通过制度和考核约束技术人员。结合多年的从业经历,我认为技术管理人员首先要清晰地知道自己...

2019-01-14 10:41:18 438

原创 使用RSA非对称加密完成JavaScript前端分段加密和java后端分段解密

前言最近研究了RSA非对称加密,关于什么是RSA,网上各种文章一搜一大把,但是关于如何使用RSA完成前后端的组合加密解密,东西就非常少了,并且由于RSA的特性,一个1024位的密钥只能加密117位字节数据,当数据量超过117位字节的时候,程序就会抛出异常,下面就给出如何完成前端RSA分段解密和后端RSA分段解密。准备前端RSA的JS类库jsencrypt-master 或 https://g...

2019-01-11 14:11:06 6426 11

原创 Web登录使用RSA对密码进行加密解密过程

RSA算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。首先简单说一下RSA加密方式(借用知乎上面的理解,通俗易懂):A要发消息给BB有一个盒子(公钥)一把锁(私钥)A拿到盒子放消息进去,上锁。快递给B,只有B能打开盒子。即使中途被劫也无法打开盒子。本文demo的实现逻辑如下:1、在后台服...

2019-01-10 18:04:31 2678

原创 解决springboot多模块注入(@Bean、@Service、@Component)访问不到的问题

如果你因为Service注入失败,看过无数文章,甚至看过N份源码仍不得要领,希望我能终结你的问题; SpringBoot中Service自动注入很方便,例:Service.class(接口类)ServiceImpl.class(实现类)Controller.class(使用类)用以上三个类来说一下自动注入:单项目:分别ServiceImpl头上@Service,Cont...

2018-10-15 11:50:47 28082 5

原创 H5判断网络状态

首先推荐一个网站,介绍H5 API的:https://github.com/AurelioDeRosa/HTML5-API-demosnetWork API:http://wicg.github.io/netinfo/1.判断网络连接的网络状态if (navigator.onLine) { alert('online')} else { alert('offline');...

2018-10-12 10:12:29 11049

转载 使用阿里云对Web开发中的资源文件进行CDN加速的深入研究和实践

提示:阅读本文需提前了解的相关知识1、阿里云(https://www.aliyun.com)2、阿里云CDN(https://www.aliyun.com/product/cdn)3、阿里云OSS(https://www.aliyun.com/product/oss)4、HTTPS(http://baike.baidu.com/view/14121.htm)阅读目录结构...

2018-09-19 16:37:57 475

原创 mysql同时使用order by和limit查询时采用时间戳做排序时的一个严重隐患 -- 丢失数据

我经常使用order by和limit来做数据分页显示并排序,一直也没发现过什么问题。但这两天缺遇到一个严重的问题,在按时间戳升序排列并用limit分批读取数据时,却发现在某些记录丢失了,表中明明有的记录确死活读取不到。研究了大半天终于发现了问题所在,记录一下以防忘记,也是给大家提个醒。问题重现工具和原料数据库:Ver 14.14 Distrib 5.6.11, for Linux...

2018-08-20 11:53:39 7674 2

原创 使用策略模式解决代码中If elseIf与Switch Case问题

策略模式+工厂方法 实现多分支操作(代替多个if else)或是Switch Case情况。import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.ster...

2018-07-31 14:39:36 2103

原创 Java中String首字母大写方法

传统思路是:先将String 的首字母单独接取下来转成大写,然后再拼接上剩余字符串。public String upperCase(String str) { return str.substring(0, 1).toUpperCase() + str.substring(1);}这里顺便提一下substring 的用法:1、截取掉str 从首字母起长度为beginIndex ...

2018-07-31 09:44:57 17749

原创 Java程序健康检查,查看相关Bean对象是否存在、各种服务是否正常运行

上接上代码,这个需要自己测试,或是压测,本人从公司项目中扒下来的import java.util.List;/** * Bean健康检查接口*/public interface IBeanHealthChecker { /** * 检查checker内部定义bean * @return */ public GroupHealthStat...

2018-05-31 15:06:06 4345

原创 HttpClient4.x 工具类与多线程测试用例

不多说了直接上代码,代码经过线上测试过import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import java.io.InterruptedIOException;import java.net.Unknow...

2018-05-31 11:30:37 1195 3

原创 Java 通过魔数判断上传文件的类型

这里所说的表示不同文件类型的魔术数字,指定是文件的最开头的几个用于唯一区别其它文件类型的字节,有了这些魔术数字,我们就可以很方便的区别不同的文件,这也使得编程变得更加容易,因为我减少了我们用于区别一个文件的文件类型所要花费的时间。比如,一个JPEG文件,它开头的一些字节可能是类似这样的”ffd8 ffe0 0010 4a46 4946 0001 0101 0047 ……JFIF…..G“,这里...

2018-03-27 14:29:25 8281 2

原创 java合并pdf

一.开发准备    下载pdfbox-app-1.7.1.jar包;下载地址:http://download.csdn.net/detail/yanning1314/4852276二.简单小例子      在开发中在根据实际情况进行修改,下面是主要API的应用package com.shine.efcms.struts;import java.io.File;

2018-01-05 10:35:52 429

原创 java list对元素进行指定多个字段属性按多种排序方式进行排序

import java.lang.reflect.Field;import java.text.NumberFormat;import java.util.Collections;import java.util.Comparator;import java.util.Date;import java.util.List;/** * 功能说明 * * 在数据库中查出来的

2017-07-21 11:16:41 4007 1

在应用层通过spring特性解决数据库读写分离代码

在应用层通过spring特性解决数据库读写分离代码

2016-03-22

用Java实现FTP批量大文件上传下载

用Java实现FTP批量大文件上传下载

2014-06-30

Android之SQLite分页表格源码

关于Android之SQLite分页表格,使用SQLite作为数据库实现数据分页显示的表格

2014-06-26

Struts2返回JSON数据的具体应用范例 Struts2_JSON_Demo

Struts2返回JSON数据的具体应用范例

2013-03-05

点阵字库在JAVA中的实现源码

点阵字库在JAVA中的实现源码

2012-12-25

fatjar用于打包可执行的jar文件软件

fatjar用于打包可执行的jar文件软件

2012-11-12

exe4j安装包

exe4j安装包文件

2012-11-12

Swing下CS结构软件自动升级实现

前段时间做了一个工具发布给公司的各部门使用后反馈了不少BUG,每次修改后均需要发邮件通知各用户替换最新版本,很不方便,因此后来就写了一个自动升级的功能,这样每次发布新的版本时只需要将其部署到自动升级服务器上,工具使用用户运行工具时就会连接到自动升级服务器,检查是否有版本更新,如果有则完成更新后再运行最新版本,否则就运行当前工具版本。 为了使这个自动升级模块具有通用性,我将其做成可以单独运行的程序,而并非集成到工具中,这样则可以为各类软件提供自动升级的功能。自动升级模块采用SOCKET方式实现升级客户端与服务端的交互,通过版本控制文件autoupdate.xml来控制版本的更新,完成自动更新后会将历史清单history.htm也发送给客户端,并自动打开该文件,使用户可以对本次升级的具体内容一目了然。

2012-10-16

java图片压缩处理 支持gif

java图片压缩处理

2012-10-15

java处理GIF文件格式时进行相关分析的类

生成和解析动态的GIF图片 有了以上对图象的基本处理之后,我们再来看看对动态GIF图片的处理。 GIF是一种由CompuServe创建的压缩和传送图像文件的格式。 GIF图像是基于颜色列表的(存储的数据是该点的颜色对应于颜色列表的索引值),最多只支持8位(256色)。GIF文件内部分成许多存储块,用来存储多幅图像(Frame)或者是决定图像表现行为的控制块,用以实现动画和交互式应用。因此我们要生成和分析GIF图像的话,就需要对GIF文件格式进行分析,

2012-10-15

深入Java虚拟机(原书第2版)

深入Java虚拟机(原书第2版).深入Java虚拟机(原书第2版).深入Java虚拟机(原书第2版).

2012-09-26

Java 并发编程实战

Java 并发编程实战

2012-09-26

Java虚拟机规范(Java SE 7版).

Java虚拟机规范(Java SE 7版).

2012-09-26

Java RMI 开发技术

Java RMI 开发技术英文版资源PDF格式

2012-09-26

借助浏览器控件利用CSS和JavaScript设计Java桌面程序界面

借助浏览器控件利用CSS和JavaScript设计Java桌面程序界面

2012-09-26

Java制作的快速打开文件夹、程序的小工具 .

Java制作的快速打开文件夹、程序的小工具

2012-09-26

Java网络高级编程

Java网络高级编程

2012-02-23

MySQL入门常用操作命令收集.

MySQL入门常用操作命令收集,集合的mysql中常用的命令操作方法

2012-02-23

Java.P2P技术内幕

Java.P2P技术内幕,描述了p2p技术的实现内幕

2012-02-18

Swing 截屏程序

Swing 截屏程序Swing 截屏程序

2012-02-18

Ext 2.0中文API(最新版)Ext 2 API Documentation

Ext 2.0中文API(最新版)Ext 2 API Documentation

2010-05-08

很适合学习EXTJS的中文手册

是一个很好的EXTJS中文版手册,很适合那些初学EXTJS的学者

2010-05-08

ASP微型调试工具 小旋风ASP服务器

ASP微型调试工具 ASP微型测试工具 小旋风ASP服务器

2009-04-16

良好体验度的注册系统ASP.NET版本

良好体验度的注册系统ASP.NET版本Asp.NET+AJAX *特点和知识点: 1.AJAX验证用户名和验证码,同时异步进行用户名注册(都属于AJAX的很基础部分) 2.支持验证码刷新(包括firefox平台下) 3.密码,邮箱,用户名等即时检测(利用javascript DOM) 4.HTML通过W3C Strict验证,CSS也通过W3C CSS验证(其实这个有点多余,并不完全必要)

2008-12-07

空空如也

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

TA关注的人

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