这个类可以用于自定义的类型转换, 子类继承这个类之后可以重写子类的方法 ,其中比较重要的是setAsText和setValue方法,setAsText 子自己的方式处理转换,setValue将转换的结果进行保存,最后调用getValue()获取转换后的结果

例子如下

将三个字符串转换为userInfo对应的属性

public class userInfo {
private long userId;
private String username;
private int age;
public long getUserId() {
return userId;
}
public void setUserId(long userId) {
this.userId = userId;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}

}

//进行转换的类

public class userPropertyEdit extends PropertyEditorSupport {

@Override
public void setAsText(String s) {
// super.setAsText(info);
// String[] personInfo = StringUtils.delimitedListToStringArray(info, "|");
// 顺序为 id,age,name
String[] Info = {"1","2","lile"};
userInfo man = new userInfo();
man.setUserId(Integer.parseInt(Info[0]));
man.setAge(Integer.parseInt(Info[1]));
man.setUsername(Info[2]);
setValue(man);
}

}

//测试类

package myrefelct;

public class testProperty {
public static void main(String[] args) {
userPropertyEdit e = new userPropertyEdit();
e.setAsText("");
Object s = e.getValue();
System.out.println(s);
}

}

类型转换之 PropertyEditorSupport类的更多相关文章

  1. Util应用程序框架公共操作类(三):数据类型转换公共操作类(扩展篇)

    上一篇以TDD方式介绍了数据类型转换公共操作类的开发,并提供了单元测试和实现代码,本文将演示通过扩展方法来增强公共操作类,以便调用时更加简化. 下面以字符串转换为List<Guid>为例进 ...

  2. Util应用程序框架公共操作类(二):数据类型转换公共操作类(源码篇)

    上一篇介绍了数据类型转换的一些情况,可以看出,如果不进行封装,有可能导致比较混乱的代码.本文通过TDD方式把数据类型转换公共操作类开发出来,并提供源码下载. 我们在 应用程序框架实战十一:创建VS解决 ...

  3. Util应用程序框架公共操作类(一):数据类型转换公共操作类(介绍篇)

    本系列文章将介绍一些对初学者有帮助的辅助类,这些辅助类本身并没有什么稀奇之处,如何能发现需要封装它们可能更加重要,所谓授之以鱼不如授之以渔,掌握封装公共操作类的技巧才是关键,我会详细说明创建这些类的动 ...

  4. 类型转换辅助工具类TypeCaseHelper

    package org.sakaiproject.util; import java.math.BigDecimal; import java.sql.Date; import java.sql.Ti ...

  5. 泛型集合、datatable常用数据类型转换Json帮助类

    泛型集合.datatable常用数据类型转换Json帮助类 using System; using System.Data; using System.Configuration; using Sys ...

  6. java中的BigDecimal和String的相互转换,int和String的类型转换,Integer类和String相互转换

    一: /*由数字字符串构造BigDecimal的方法 *设置BigDecimal的小数位数的方法 */ 注:BigDecimal在数据库中存的是number类型. import java.math.B ...

  7. ae(ArcEngine) java swing开发入门系列(2):ae的类型转换和Proxy类说明

    做过C#版ae的都知道,操作同一个“对象”,用他的不同功能要转换到相应的接口,但java版有时不能直接做类型转换 例如下图在C#是可以的 但在java不行,这样转会报错,看IFeatureClass的 ...

  8. BigInteger类型转换成Long类型或int类型问题

            BigInteger bi = new BigInteger("123");           int i = bi.intValue();         lo ...

  9. 存在继承关系的Java类对象之间的类型转换(一)

      类似于基本数据类型之间的强制类型转换. 存在继承关系的父类对象和子类对象之间也可以 在一定条件之下相互转换. 这种转换需要遵守以下原则: 1.子类对象可以被视为是其父类的一个对象2.父类对象不能被 ...

随机推荐

  1. java集合系列

    工作以来,一直对java集合理解的不够全面,不够深入,就是常用的ArrayList/HashMap/Set/List,有时候会用一下LinkedList.一时兴起,可能对TreeSet,HashSet ...

  2. 简单五子棋,没有电脑AI

    刚学了C#委托,做了个五子棋练习,把前台绘制和后台逻辑分开,前台绘制方法用委托传给后台逻辑. 界面好简单... 先看类图 控制类控制整个游戏的逻辑,包括调用棋盘类的属性初始化棋盘.初始化两个棋手.轮流 ...

  3. tpcc-mysql的使用

    1.tpcc-mysql的业务逻辑及其相关的几个表作用:      New-Order:新订单,一次完整的订单事务,几乎涉及到全部表      Payment:支付,主要对应 orders.histo ...

  4. PHP获得上(两)周时间

    就不手写了

  5. JavaScript知识点整理(一)

    JavaScript知识点(一)包括 数据类型.表达式和运算符.语句.对象.数组. 一.数据类型 1) js中6种数据类型:弱类型特性 5种原始类型:number(数字).string(字符串).bo ...

  6. Java 多线程详解(三)------线程的同步

    Java 多线程详解(一)------概念的引入:http://www.cnblogs.com/ysocean/p/6882988.html Java 多线程详解(二)------如何创建进程和线程: ...

  7. 《Android进阶》Sqlite的使用

    之前认为Sqlite只能一次性创建多个表,其实不是 关键是对Sqlite的操作需要一些技巧: package com.example.mydemo; import android.content.Co ...

  8. java 解决时间相减问题

    比如 Date currentTime ="2011-06-20 9:23:50"; Date endTime="2011-06-21 10:33:56"; 要 ...

  9. 探索Gallery和ImageSwitcher布局

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layo ...

  10. Calendar使用

    1简单例子 package com.kungeek.tip; import java.text.SimpleDateFormat; import java.util.Calendar; import ...