1

我使用以下代码来确定类成员类型,我已经看过所有的自省方法,但还没有完全弄清楚如何在我的代码中对字符串、BigDecimal、日期等类型执行此操作,您可以看到我检查了对于原始并调用处理它的方法。1. 我想对字符串、BigDecimal、fieldTypeName、java.util.Date 等做同样的事情我应该怎么做?

  1. 这种类型怎么称呼?

对于诸如 jobList 之类的泛型类型,我使用 genericType 处理程序...

Object newInstance = clsObj.getClass().newInstance();

                for (Field field : declaredFields) {

                    // Get member name & types

                    Class<?> fieldType = field.getType();
                    Type genericType = field.getGenericType();
                    String fieldTypeName = fieldType.getName();
                    String memberName = field.getName();

                    boolean primitive = field.getType().isPrimitive();
                    handlePrimtive();

if (genericType instanceof ParameterizedType) {

这是课

@Entity
public class Person {
@Id
@GeneratedValue(strategy = GenerationType.TABLE)
private int id;
private String firstName;
private BigDecimal bigDecimal;
private java.util.Date myDate;
private List<Job> jobList = new ArrayList<Job>();
4

1 回答 1

2
Class <?> type = field.getType ();
if (String.class.equals (type)) handleString ();
else if (Date.class.equals (type)) handleDate ();
...
于 2013-02-17T16:47:43.387 回答