
Java
卡布奇诺的奇泡
这个作者很懒,什么都没留下…
展开
-
java.util.concurrent.ThreadPoolExecutor线程池的拒绝策略
Java线程池的队列满了,怎么进行拒绝呢,Java定义了RejectedExecutionHandler接口。一般有5个拒绝策略。1、AbortPolicy 默认,抛异常2、DiscardPolicy啥也不做3、DiscardOldestPolicy丢弃最老的4、CallerRunsPolicy主线程自己上5、自定义/** * * <p>Title: Re...原创 2018-08-27 16:30:40 · 5283 阅读 · 0 评论 -
Jquery 异步上传文件
一、参数说明1、contentType:(默认: "application/x-www-form-urlencoded") 发送信息至服务器时内容编码类型。默认值适合大多数情况。如果你明确地传递了一个content-type给 $.ajax() 那么他必定会发送给服务器(即使没有数据要发送)。2、processData:(默认: true) 默认情况下,通过data选项传递进来的数据,如果...原创 2019-01-11 18:11:16 · 2234 阅读 · 0 评论 -
观察者模式--当一个对象被修改时,则会自动通知它的依赖对象。观察者模式属于行为型模式。
1、创建 Subject 类。import java.util.ArrayList;import java.util.List; public class Subject { private List<Observer> observers = new ArrayList<Observer>(); private int ...原创 2018-12-29 15:50:54 · 1132 阅读 · 0 评论 -
Java读取文件转换成byte[]的小结
1、FileInputStream /** * * <p>Title: getContent</p> * <p>Description:根据文件路径读取文件转出byte[] </p> * @param filePath文件路径 * @return 字节数组 * @throws IOException */...原创 2018-12-29 10:52:47 · 14168 阅读 · 0 评论 -
JAXB--@XmlType注解标注xml进行解析
import java.util.List;import javax.xml.bind.annotation.XmlAccessType;import javax.xml.bind.annotation.XmlAccessorType;import javax.xml.bind.annotation.XmlElement;import javax.xml.bind.annotation...原创 2018-12-28 20:17:27 · 9087 阅读 · 0 评论 -
操作Spring容器及其中的Bean实例
import org.springframework.beans.BeansException;import org.springframework.context.ApplicationContext;import org.springframework.context.ApplicationContextAware;import org.springframework.stereoty...原创 2018-12-05 11:40:52 · 213 阅读 · 0 评论 -
http与https创建CloseableHttpClient
import java.io.IOException;import java.io.InterruptedIOException;import java.net.URL;import java.net.UnknownHostException;import java.security.cert.CertificateException;import java.security.cert...原创 2018-12-04 12:48:49 · 1170 阅读 · 1 评论 -
Java读取1G以上的txt文件,并对内容进行解析,利用BufferedReader设置缓存大小
读取文件路径 ,读入使用带缓冲的输入输出流,效率更高,速度更快。创建一个内部缓冲区数组并将其存储在 buf 中,该buf的大小默认为8192。File file = new File(filepath); BufferedInputStream fis = new BufferedInputStream(new FileInputStream(file)); Buffered...原创 2018-11-26 18:30:09 · 5669 阅读 · 5 评论 -
Spring AOP进行切面拦截@Aspect
package com.xyz.axy.aspect;import org.aspectj.lang.JoinPoint;import org.aspectj.lang.ProceedingJoinPoint;import org.aspectj.lang.annotation.After;import org.aspectj.lang.annotation.Around;impor...原创 2018-11-23 18:07:32 · 318 阅读 · 0 评论 -
模仿LinkedHashMap来进行LRU算法
让我们以用户信息的需求为例,来演示一下LRU算法的基本思路: 1.假设我们使用哈希链表来缓存用户信息,目前缓存了4个用户,这4个用户是按照时间顺序依次从链表右端插入的。2.此时,业务方访问用户5,由于哈希链表中没有用户5的数据,我们从数据库中读取出来,插入到缓存当中。这时候,链表中最右端是最新访问到的用户5,最左端是最近最少访问的用户1。 3.接下来,业务方访问用...原创 2018-11-14 14:28:45 · 171 阅读 · 0 评论 -
SHA256计算后进行十六进制转码
/** * sha256计算后进行16进制转换 * * @param data 待计算的数据 * @param encoding 编码 * @return 计算结果 */ public static byte[] sha256X16(String data, String encoding) { byte[] bytes = sha256(data, encod...原创 2018-11-15 20:56:39 · 11846 阅读 · 2 评论 -
https连接提交
import java.io.IOException;import java.io.InputStream;import java.io.UnsupportedEncodingException;import java.net.URL;import java.net.URLEncoder;import java.util.Map;import java.util.Map.Entry...原创 2018-11-05 17:50:08 · 314 阅读 · 0 评论 -
线程池的创建和使用,不建议直接使用Executor创建
实现线程池,有四种策略:生成线程池采用了工具类Executors的静态方法,以下是四种常见的线程池。SingleThreadExecutor:单个后台线程 (其缓冲队列是无界的)。创建一个单线程的线程池。这个线程池只有一个核心线程在工作,也就是相当于单线程串行执行所有任务。如果这个唯一的线程因为异常结束,那么会有一个新的线程来替代它。此线程池保证所有任务的执行顺序按照任务的提交顺序执行...原创 2018-09-29 16:20:52 · 1625 阅读 · 0 评论 -
request.getContentLength()的值为-1的问题解决方案【HttpPost发起】
1、问题的发现,服务端使用DataInputStream的方式获取流,直接上代码说明try { DataInputStream in = new DataInputStream(request.getInputStream()); // 将请求消息的实体送到b变量中 int totalBytes = request.getContentLength(); byte[] b = ne...原创 2018-09-28 15:38:06 · 10588 阅读 · 0 评论 -
非对称加密的签名和验签、加密和解密的Java语言实现
本文采用java.security包的签名和验签。采用A的私钥签名发送至B,B采用A的公钥进行验签。加解密可以私钥加密、公钥解密(或者公钥加密、私钥解密)。一般用于银行报文传输、支付宝、微信、银行以及各大银行的数据交换。package com.example.demo;import java.security.KeyPair;import java.security.KeyPa...原创 2018-08-29 15:48:08 · 1067 阅读 · 0 评论 -
判断一个卡号是否信用卡
public static boolean isCreditCard(String cardNo) { if(!isNumber(cardNo)) return false; int len = cardNo.length(); int weight = 1; int total = 0; for(int i = 0;i < len;i++) { if(i == 0...原创 2019-05-23 13:47:32 · 910 阅读 · 0 评论