自定义线程池
线程池的作用:
线程池作用就是限制系统中执行线程的数量。
根据系统的环境情况,可以自动或手动设置线程数量,达到运行的最佳效果;少了浪费了系统资源,多了造成系统拥挤效率不高。用线程池控制线程数量,其他线程 排队等候。一个任务执行完毕,再从队列的中取最前面的任务开始执行。若队列中没有等待进程,线程池的这一资源处于等待。当一个新任务需要运行时,如果线程 池中有等待的工作线程,就可以开始运行了;否则进入等待队列。
为什么要用线程池:
1.减少了创建和销毁线程的次数,每个工作线程都可以被重复利用,可执行多个任务
2.可以根据系统的承受能力,调整线程池中工作线线程的数目,防止因为因为消耗过多的内存,而把服务器累趴下(每个线程需要大约1MB内存,线程开的越多,消耗的内存也就越大,最后死机)
对象,数组转json
object , bean , list 转json工具
省市县三级联动邮 编
省市县三级联动 自动匹配邮编!省市县三级联动 自动匹配邮编
slf4j-jar.zip
slf4j-jar.zip 所有包!
bcprov-jdk16-145.jar
bcprov-jdk16-145.jar
commons-lang
Commons项目中用来处理Java基本对象方法的工具类包,可以简化很多平时经常要用到的写法,例如判断字符串是否为空等等
commons-codec-1.5.jar
Commons项目中用来处理常用的编码方法的工具类包,例如DES、SHA1、MD5、Base64等等。
JS客户端RSA加密,Java服务端解密
在客户端浏览器,Javascript使用RSA算法,以公钥对密码进行加密,服务端使用相应的私钥进行解密。一般用于注册时或登录时填写的密码。
Java引用到的包:
commons-lang
bouncycastle
slf4j
commons-codec
commons-io
// Struts2 Action方法中:
// 将公钥的 modulus 和 exponent 传给页面。
// Hex -> apache commons-codec
RSAPublicKey publicKey = RSAUtils.getDefaultPublicKey();
ActionContext.getContext().put("modulus", new String(Hex.encodeHex(publicKey.getModulus().toByteArray())));
ActionContext.getContext().put("exponent", new String(Hex.encodeHex(publicKey.getPublicExponent().toByteArray())));
// 页面里,Javascript对明文进行加密:
09
var modulus = $('#hid_modulus').val();
var exponent = $('#hid_exponent').val();
var key = RSAUtils.getKeyPair(exponent, '', modulus);
pwd1 = RSAUtils.encryptedString(key, pwd1);
pwd2 = RSAUtils.encryptedString(key, pwd2);
// 服务器端,使用RSAUtils工具类对密文进行解密
RSAUtils.decryptStringByJs(password1);
Eclipse中10个最有用的快捷键组合
Eclipse中10个最有用的快捷键组合
java_加密解密简单实现
java_加密解密简单实现:
1:消息摘要:(数字指纹)
2:单匙密码体制
3:数字签名
4:非对称密匙密码体制(公匙体系)
省市县三级联动
省市县三级联动省市县三级联动省市县三级联动省市县三级联动