java
文章平均质量分 53
hqmln
这个作者很懒,什么都没留下…
展开
-
java人民币大写
人民币大写的类package com.capinfo.test;public class MoneyUtil { /** 大写数字 */ private static final String[] NUMBERS = { "零", "壹", "贰", "叁", "肆", "伍", "陆", "柒",原创 2013-09-03 21:21:39 · 78 阅读 · 0 评论 -
JAVA对象转成JSON的三种开源实现方式
第一种方式:Google的GsonGson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。可以将一个 JSON 字符串转成一个 Java 对象第二种方式:Flexjson Flexjson 是一个将 Java 对象转成 JSON 的 类库,是一个深度转换的过程第三种方式:阿里巴巴的fastjson fastjson 是一个性能...原创 2015-05-27 10:18:03 · 281 阅读 · 0 评论 -
UrlRewriteFilter
使用Url重写能给网站带来哪些好处: 第一:有利于搜索引擎的抓取,因为现在大部分的搜索引擎对动态页面的抓取还比较弱,它们更喜欢抓取一些静态的页面。而我们现在的页面大部分的数据都是动态的显示的。这就需要我们把动态页面变成静态的页面,有利于搜索引擎的抓取。第二:让用户更容易理解,很少有用户去关心你网站的页面的地址,但对一般的大中型网站增强可读性还是必须的。这样会让你的网站更加完美。第三:隐...原创 2015-05-28 10:59:28 · 101 阅读 · 0 评论 -
java利器---jodd
网上对Jodd的描述如下:Jodd是一个普通开源Java包。你可以把Jodd想象成Java的"瑞士军刀",不仅小,锋利而且包含许多便利的功能。Jodd 提供的功能有:1. 提供操作Java bean,2. 可以从各种数据源加载Bean,3. 简化JDBC的接连与代码,4. 剖析SQL查询,5. 处理时间与日期,6. 操作与格式化String,7. 搜索本地硬盘...原创 2015-06-04 11:08:52 · 79 阅读 · 0 评论 -
sring 注解@PostConstruct@PreDestroy
spring 容器初始化 bean 和销毁前所做的操作定义方式有三种:第一种:通过@PostConstruct 和 @PreDestroy 方法 实现初始化和销毁bean之前进行的操作第二种是:通过 在xml中定义init-method 和 destory-method方法第三种是: 通过bean实现InitializingBean和 DisposableBean接口使用例子...原创 2015-06-04 12:06:35 · 76 阅读 · 0 评论 -
web.xml中<security-constraint>安全认证标签说明
1.security-constraint元素部署描述符中的<security-constraint>元素允许不通过编程就可以限制对某个资源的访问。 <security-constraint> <display-name>default</display-name> <web-resource-collect...原创 2015-06-04 15:56:57 · 1090 阅读 · 0 评论 -
IBM WAS简介
IBM WAS简介IBM WAS 的全称是 IBM WebSphere Application Server ,和 Weblogic 一样 ,是 当前主流的 App Server (应用服务器)之一 。App Server 是运行 Java 企 业组 件的平台,构成了 应 用 软 件的主要运行 环 境。其他常用的 App Server 还有 : Tomcat 、 Jboss 。...原创 2014-10-13 10:55:59 · 1721 阅读 · 0 评论 -
集群中几种session同步方案
集群中session安全和同步是个最大的问题,下面是我收集到的几种session同步的方案,希望能通过分析其各自的优劣找出其适应的场景。1. 客户端cookie加密这是我以前采用的方式,简单,高效。比较好的方法是自己采用cookie机制来实现一个session,在应用中使用此session实现。问题:session中数据不能太多,最好只有个用户id。参考实现:http://rollerwebl...原创 2015-08-13 14:20:39 · 167 阅读 · 0 评论 -
logback
官方网站 http://logback.qos.ch/ Logback 为取代 log4j 而生。 Logback 由 log4j 的创立者 Ceki Gülcü设计。以十多年设计工业级记录系统的经验为基 础,所创建的 logback 比现有任何记录系统更快、占用资源更少,有时差距非常大。 Logback 提供独特而实用的特性,比如 Marker、参数化记录语句、条件化堆栈跟踪和强 大...原创 2016-11-02 13:15:01 · 73 阅读 · 0 评论 -
Script Engine使用
Java SE 6最引人注目的新功能之一就是内嵌了脚本支持。在默认情况下,Java SE 6只支持JavaScript,但这并不以为着Java SE 6只能支持JavaScript。在Java SE 6中提供了一些接口来定义一个脚本规范,也就是JSR223。通过实现这些接口,Java SE 6可以支持任意的脚本语言(如PHP或Ruby)。public class ScriptProcesso...原创 2016-11-04 13:09:59 · 646 阅读 · 0 评论 -
jdk7 FTP连接
使用jdk7用于连接和操作ftp服务器package com.voiinnov.xingye.util;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io....原创 2015-05-22 11:53:58 · 164 阅读 · 0 评论 -
使用Java自带DOM工具解析XML
xml文件的格式为<?xml version="1.0" encoding="GBK"?><CIBOFP> <HEAD> <APPCODE>111111</APPCODE> <BUSCD>1104</BUSCD> <EXSERI原创 2015-05-20 13:23:19 · 117 阅读 · 0 评论 -
获取根目录下的文件方法 Resource
private static ClassLoader getClassLoader() { if (defaultClassLoader != null) { return defaultClassLoader; } else { return Thread.currentThread().getContextClassLoader();...原创 2015-05-19 10:18:05 · 580 阅读 · 0 评论 -
字符和数字的转换
字符转数字数字转字符 DecimalFormat df = new DecimalFormat("00000"); String seq = "00121"; String seq1="1407东00022"; System.out.println(seq1.substring(5)); System.out.println(df.format(Long.pa...原创 2014-07-14 15:42:03 · 101 阅读 · 0 评论 -
获取服务器的地址
import java.io.File;import java.net.URL;import javax.servlet.ServletException;import org.apache.struts2.ServletActionContext;/** * 程序中的很多地方需要用到request.getRealPath()或者getServle...原创 2014-03-14 09:45:54 · 343 阅读 · 0 评论 -
原始java写的模拟HTTP请求 HttpsMethod
原始java写的模拟HTTP请求package com.fc.utility;import java.awt.image.BufferedImage;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.ByteArrayOutputStream;import java.i...原创 2015-02-02 16:41:50 · 80 阅读 · 0 评论 -
PropertyResourceBundle和Properties区别
Properties读取Properties prop = new Properties();// 属性集合对象 FileInputStream fis = new FileInputStream(path);// 属性文件输入流 prop.load(fis);// 将属性文件流装载到Properties对象中 fis.close();// 关闭流 value...原创 2015-04-28 16:38:10 · 269 阅读 · 0 评论 -
DES加密里边,ECB和CBC有什么区别
ECB模式:优点:1. 简单;2. 有利于并行计算;3. 误差不会被传递;缺点:1. 不能隐藏明文的模式;2. 可能对明文进行主动攻击;DES ECB(电子密本方式)其实非常简单,就是将数据按照8个字节一段进行DES加密或解密得到一段段的8个字节的密文或者明文,最后一段不足8个字节(一般补0或者F),按照需求补足8个字节进行计算(并行计算),之后按照顺序将计算所...原创 2015-04-29 16:44:39 · 951 阅读 · 0 评论 -
bouncy castle
Bouncy Castle 是一种用于 Java 平台的开放源码的轻量级密码术包。它支持大量的密码术算法,并提供 JCE 1.2.1 的实现。因为 Bouncy Castle 被设计成轻量级的,所以从 J2SE 1.4 到 J2ME(包括 MIDP)平台,它都可以运行。它是在 MIDP 上运行的唯一完整的密码术包。 BouncyCastle是一个开源的加解密解决方案,主页在ht...原创 2015-04-30 09:39:39 · 123 阅读 · 0 评论 -
jaxb
JAXB是Java Architecture for XML Binding的缩写。可以将一个Java对象转变成为XML格式,反之亦然。 我们把对象与关系数据库之间的映射称为ORM,其实也可以把对象与XML之间的映射称为OXM(Object XML Mapping)。原来JAXB是Java EE的一部分,在JDK1.6中,SUN将其放到了Java SE中,这也是SUN的一贯做法。JDK...原创 2015-04-30 10:05:44 · 70 阅读 · 0 评论 -
jaxb小工具类
package jaxb.shop;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.UnsupportedEncodingExceptio...原创 2015-04-30 13:38:12 · 134 阅读 · 0 评论 -
URL执行post提交
import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.net.HttpURLConnection; import java.net.URL; import java.util.Map; ...原创 2015-05-18 11:08:52 · 298 阅读 · 0 评论 -
Marble Java调度框架
官网 https://github.com/jeff-dong/marble Marble的核心其实有两个部分:1)Job的调度;2)与服务端的通讯;Marble的job调度使用了Quartz – 一款流行的开源作业调度框架。与Job服务端的通讯使用了Apache Thrift / Netty(2.0.0开始) - 一款开源的高效RPC框架。Marble在两...原创 2016-11-04 13:29:51 · 191 阅读 · 0 评论 -
JsonPath的使用
JsonPath描述$根节点@当前节点.or[]子节点..选择所有符合条件的节点*所有节点[]迭代器标示,如数组下标[,]支持迭代器中做多选[start:end:ste...原创 2016-11-07 14:12:17 · 109 阅读 · 0 评论 -
Http与Servlet工具类
/** * Http与Servlet工具类. * */public abstract class ServletUtils { //-- Content Type 定义 --// public static final String EXCEL_TYPE = "application/vnd.ms-excel"; public stat...原创 2017-09-15 09:14:59 · 102 阅读 · 0 评论 -
Jackson简单封装
import java.io.IOException;import org.apache.commons.lang.StringUtils;import org.codehaus.jackson.JsonProcessingException;import org.codehaus.jackson.map.DeserializationConfig;import org....原创 2017-09-15 09:20:39 · 304 阅读 · 0 评论 -
金额格式转换
import java.math.BigDecimal;import java.util.regex.Matcher;import java.util.regex.Pattern;/** * @ 金额格式转换. */public class AmountUtil { private static final BigDecimal MAG =...原创 2017-09-15 09:21:07 · 312 阅读 · 0 评论 -
volatile关键字
volatile关键字的两层语义一旦一个共享变量(类的成员变量、类的静态成员变量)被volatile修饰之后,那么就具备了两层语义:1)保证了不同线程对这个变量进行操作时的可见性,即一个线程修改了某个变量的值,这新值对其他线程来说是立即可见的。2)禁止进行指令重排序。...原创 2018-02-28 13:13:23 · 63 阅读 · 0 评论 -
RMI使用
搭建一个RMI服务的过程分为以下7步;1,创建远程方法接口,该接口必须继承自Remote接口Remote 接口是一个标识接口,用于标识所包含的方法可以从非本地虚拟机上调用的接口,Remote接口本身不包含任何方法 package server;import java.rmi.Remote;import java.rmi.RemoteException;publ...原创 2018-03-01 12:50:35 · 98 阅读 · 0 评论 -
Spring对RMI的支持
public class SimpleObject { private AccountService accountService; public void setAccountService(AccountService accountService) { this.accountService = accountService; } 1.使...原创 2018-03-01 13:18:33 · 97 阅读 · 0 评论 -
UnicastRemoteObject.exportObject使用
public class CalculatorServer implements Calculator { public String calculate(String expr) throws RemoteException { return expr; } public void start() throws RemoteExceptio...原创 2018-03-01 13:45:55 · 1719 阅读 · 0 评论 -
Amoeba Mysql读写分离
Amoeba(变形虫)项目,专注 分布式数据库 proxy 开发。介于与Client、DBServer(s)之间。对客户端透明。具有负载均衡、高可用性、sql过滤、读写分离、可路由相关的query到目标数据库、可并发请求多台数据库合并结果。主要解决:• 降低 数据切分带来的复杂多数据库结构• 提供切分规则并降低 数据切分规则 给应用带来的影响• 降低db 与客户端的连接数• 读写分离二、为什么...原创 2018-03-07 11:37:28 · 108 阅读 · 0 评论 -
HikariCP
http://brettwooldridge.github.io/HikariCP/HiKariCP是数据库连接池,官网上说是性能最快的原创 2018-03-12 08:22:17 · 395 阅读 · 0 评论 -
日期工具类
public static String formatShort(Date date) { Date now = new Date(); long time = now.getTime() - date.getTime(); if (time < 60 * 60 * 1000) { return (t...原创 2017-09-14 09:27:33 · 61 阅读 · 0 评论 -
编码解码工具类
import java.io.UnsupportedEncodingException;import java.net.URLDecoder;import java.net.URLEncoder;import org.apache.commons.codec.DecoderException;import org.apache.commons.codec.binary....原创 2017-09-14 09:24:06 · 470 阅读 · 0 评论 -
Properties文件工具类
import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.util.Properties;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org....原创 2017-09-14 08:59:24 · 130 阅读 · 0 评论 -
Hessian
Hessian是一个轻量级的remoting on http工具,使用简单的方法提供了RMI的功能。 相比WebService,Hessian更简单、快捷。采用的是二进制RPC协议,因为采用的是二进制协议,所以它很适合于发送二进制数据。...原创 2016-03-30 13:37:09 · 51 阅读 · 0 评论 -
AtomicInteger
AtomicInteger,一个提供原子操作的Integer的类。在Java语言中,++i和i++操作并不是线程安全的,在使用的时候,不可避免的会用到synchronized关键字。而AtomicInteger则通过一种线程安全的加减操作接口。...原创 2017-07-13 11:13:52 · 69 阅读 · 0 评论 -
StopWath
StopWath是apache commons lang包下的一个任务执行时间监视器 主要方法: start(); //开始计时 split(); //设置split点 getSplitTime(); //获取从start 到 最后一次split的时间 reset(); //重置计时 suspend(); //暂停计时, 直到调...原创 2017-07-13 13:47:45 · 67 阅读 · 0 评论 -
System.nanoTime()
平时产生随机数时我们经常拿时间做种子,比如用System.currentTimeMillis的结果,但是在执行一些循环中使用了System.currentTimeMillis,那么每次的结果将会差别很小,甚至一样,因为现代的计算机运行速度很快。后来看到Java中产生随机数函数以及线程池中的一些函数使用的都是System.nanoTime,下面说一下这2个方法的具体区别。System.nanoTi...原创 2017-07-14 08:41:44 · 160 阅读 · 0 评论