1. /**
  2. * Copyright: Copyright (c) 2005-2005
  3. * Company: JavaResearch(http://www.javaresearch.org)
  4. */
  5. package org.javaresearch.jerch;
  6. /**
  7. * 将Number类型的值转换为其他类型的转换器。
  8. * 最后更新日期:2005年3月28日
  9. * @author cherami
  10. */
  11. public class NumberValueConverter extends AutoRegisterValueConverter {
  12. /**
  13. * 构造方法。
  14. */
  15. public NumberValueConverter() {
  16. super(Number.class);
  17. }
  18. /**
  19. * 将original的值转换为目标类型。
  20. * @param original 原始值
  21. * @param targetType 目标值的类型
  22. * @return 转换后的结果
  23. */
  24. public Object convert(Object original, Class targetType) {
  25. Number value = (Number) original;
  26. if (targetType.equals(Long.class)) {
  27. return new Long(value.longValue());
  28. } else if (targetType.equals(Integer.class)) {
  29. return new Integer(value.intValue());
  30. } else if (targetType.equals(Character.class)) {
  31. return new Character((char)value.intValue());
  32. } else if (targetType.equals(Byte.class)) {
  33. return new Byte(value.byteValue());
  34. }
  35. return original;
  36. }
  37. }