工具-Utils
文章平均质量分 94
OkidoGreen
这个作者很懒,什么都没留下…
展开
-
Java实现短链接URL生成
现在比较流行短连接,例如新浪微博,腾讯等等公司都开始使用短连接。① 将长网址用md5算法生成32位签名串,分为4段,,每段8个字符;② 对这4段循环处理,取每段的8个字符, 将他看成16进制字符串与0x3fffffff(30位1)的位与操作,超过30位的忽略处理;③ 将每段得到的这30位又分成6段,每5位的数字作为字母表的索引取得特定字符,依次进行获得6位字符串;④ 这样一个md5字符串可以获得4个6位串,取里面的任意一个就可作为这个长url的短url地址。很简单的理论,我们并不一定说得转载 2022-04-19 13:09:31 · 7691 阅读 · 0 评论 -
Java获取真实IP,servlet request getHeader(“x-forwarded-for“)
在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了 Apache,Nagix等反向代理软件就不能获取到客户端的真实IP地址了。如果使用了反向代理软件,用 request.getRemoteAddr()方法获取的IP地址是:127.0.0.1或 192.168.1.110,而并不是客户端的真实IP。转载 2014-03-13 20:33:49 · 40455 阅读 · 7 评论 -
如何优雅的转换 Bean 对象!
背景我们的故事要从一个风和日丽的下午开始说起!这天,外包韩在位置上写代码~外包韩根据如下定义 PO(persistant object):持久化对象,可以看成是与数据库中的表相映射的 java 对象。最简单的 PO 就是对应数据库中某个表中的一条记录。 VO(view object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。 BO(business object):业务对象,主要作用是把业务逻辑封装为一个对象。这个对象可以包括一个或多个其转载 2020-11-14 11:15:41 · 835 阅读 · 1 评论 -
Apache Commons Codec -- 加密与编码
配置Maven依赖<dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <!-- 提供Hex、DigestUtils、Base64等 --> <version>...转载 2020-02-14 21:11:29 · 1970 阅读 · 0 评论 -
关于BeanCopier的一些思考
在做业务的时候,我们有时为了隔离变化,会将DAO查询出来的Entity,和对外提供的DTO隔离开来。大概90%的时候,它们的结构都是类似的,但是我们很不喜欢写很多冗长的b.setF1(a.getF1())这样的代码,于是我们需要BeanCopier来帮助我们。在做业务的时候,我们有时为了隔离变化,会将DAO查询出来的Entity,和对外提供的DTO隔离开来。大概90%的时候,它们的结构都是原创 2017-09-20 15:22:11 · 2006 阅读 · 0 评论 -
BeanCopier系列之三:缓存BeanCopier提升性能
BeanCopier系列之一:特性测试 BeanCopier系列之二:使用Converter BeanCopier拷贝速度快,性能瓶颈出现在创建BeanCopier实例的过程中。 所以,把创建过的BeanCopier实例放到缓存中,下次可以直接获取,提升性能: Java代码 public class CachedBeanCopier {转载 2017-09-20 15:22:57 · 4368 阅读 · 0 评论 -
Java 数字千位分隔符
package com.zing;import java.math.BigDecimal;import java.text.DecimalFormat;public class Test {public static void main(String[] arg) {BigDecimal bd = new BigDecimal(123456789.3);System.out.pr转载 2018-02-09 10:43:36 · 6089 阅读 · 0 评论 -
Java执行外部程序(Apache Commons Exec)
https://blog.csdn.net/accountwcx/article/details/46787603之前使用Runtime.getRuntime().exec调用外部程序,在Tomcat下会有当前线程一直等待的现象。当时为了解决这个问题,使用新建线程接收外部程序的输出信息,详情请看博客http://blog.csdn.net/accountwcx/article/转载 2018-05-02 10:17:12 · 1502 阅读 · 0 评论 -
BeanCopier系列之一:特性测试
BeanCopier系列之二:使用Converter BeanCopier系列之三:缓存BeanCopier提升性能 cglib是一款比较底层的操作java字节码的框架。 下面通过拷贝bean对象来测试BeanCopier的特性: Java代码 public class OrderEntity { private int转载 2017-09-20 15:20:47 · 943 阅读 · 0 评论 -
BeanCopier系列之二:使用Converter
BeanCopier系列之一:特性测试 BeanCopier系列之三:缓存BeanCopier提升性能 当源和目标类的属性类型不同时,不能拷贝该属性,此时我们可以通过实现Converter接口来自定义转换器: 源类和目标类: Java代码 public class AccountEntity { private int i转载 2017-09-20 15:20:12 · 8452 阅读 · 0 评论 -
BeanUtils.copyProperties方法遇到null值问题
转自:http://simen-net.iteye.com/blog/644801在MVC的开发模式中经常需要将model与pojo的数据绑定,apache和spring的工具包中都有BeanUtils,使用其中的copyProperties方法可以非常方便的进行这些工作,但在实际应用中发现,对于null的处理不太符合个人的需要,例如在进行修改操作中只需要对model中某一项进行修改,那么转载 2014-07-01 20:54:57 · 9176 阅读 · 0 评论 -
使用org.apache.commons.io.FileUtils,IOUtils;工具类操作文件
File src = new File("G:/2012/portal/login.jsp");File tar = new File("G:/2012/portal/loginZs.jsp");File tarDir = new File("G:/2012/portal/center/");FileUtils.copyFile(src,tar);//复制文件FileUtils.copy原创 2012-10-22 10:56:26 · 20498 阅读 · 1 评论 -
BeanUtils使用总结 setProperties
1、 BeanUtils一共分4个包: org.apache.commons.beanutils org.apache.commons.beanutils.converters org.apache.commons.beanutils.locale org.apache.commons.beanutils.locale.converters转载 2015-01-09 08:26:50 · 16773 阅读 · 0 评论 -
Bean复制的几种框架性能比较(Apache BeanUtils、PropertyUtils,Spring BeanUtils,Cglib BeanCopier)
比较的是四种复制的方式,分别为Apache的BeanUtils和PropertyUtils,Spring的BeanUtils,Cglib的BeanCopier。做法是在Eclipse新建了一个Project,专门用于专门测试几种代码的性能。具体的代码如下: 一个FromBean和一个ToBean,两个的代码基本上一样,除了类名称不一样,所以只是贴出来了一份。转载 2015-02-14 21:04:43 · 6597 阅读 · 0 评论 -
Java常用工具包 Jodd
下文摘抄自:开源中国 Demo jar下载 官方文档JoddAPIJodd 是一个 Java 的工具包和一个微型框架。Jodd 工具增强了 JDK 提供很多强大的功能,帮助你实现日常的一些开发任务,让代码更加可靠和健壮。而 Jodd 框架是一个轻量级的应用框架,紧缩但强大。设计遵循 CoC、DRY 和 SCS 原则,让开发更加简单。 Jodd = tools + ioc +转载 2016-12-20 18:35:41 · 3265 阅读 · 0 评论 -
Jodd-Java的瑞士军刀 demo
http://www.oschina.NET/p/joddJodd是一个普通开源Java包。你可以把Jodd想象成Java的"瑞士军刀",不仅小,锋利而且包含许多便利的功能。Jodd 提供的功能有: 提供操作Java bean, 可以从各种数据源加载Bean, 简化JDBC的接连与代码, 剖析SQL查询, 处理时间与日期, 操作与格式化String, 搜转载 2016-12-20 18:38:35 · 2317 阅读 · 0 评论 -
Spring 获取 实现某接口的所有实例bean
首先,获取 applicationContext,通过ApplicationAware自动注入import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import org.springframework.beans.BeansException;import org.sprin原创 2017-01-11 20:39:25 · 22663 阅读 · 1 评论 -
关于toString方法的重写工具ToStringBuilder
apache的commons-lang3的工具包里有一个ToStringBuilder类,这样在打日志的时候可以方便的打印出类实例中的各属性的值。具体用法如下:[java] view plain copyimport org.apache.commons.lang3.builder.ToStringBuilder; import转载 2017-07-26 14:41:17 · 3545 阅读 · 0 评论 -
Java开发常用工具类
package com.cucpay.tradeportal.util; import java.io.UnsupportedEncodingException; import java.lang.reflect.Field; import java.net.URLDecoder; import java.net.URLEncoder; import java.nio.c转载 2014-04-17 13:17:44 · 5986 阅读 · 0 评论