private void handleProperty(EntityType entityType, Class<?> cl, Attribute<?,?> p)
            throws NoSuchMethodException, ClassNotFoundException {
        Class<?> clazz = Object.class;
        try {
            clazz = p.getJavaType();
        } catch (MappingException e) {
            // ignore
        }
        Type propertyType = getType(cl, clazz, p.getName());

        AnnotatedElement annotated = getAnnotatedElement(cl, p.getName());
        propertyType = getTypeOverride(propertyType, annotated);
        if (propertyType == null) {
            return;
        }

        if (p.isCollection()) {
            if (p instanceof MapAttribute) {
                MapAttribute<?,?,?> map = (MapAttribute<?,?,?>) p;
                Type keyType = typeFactory.get(map.getKeyJavaType());
                Type valueType = typeFactory.get(map.getElementType().getJavaType());
                valueType = getPropertyType(p, valueType);
                propertyType = new SimpleType(propertyType,
                        normalize(propertyType.getParameters().get(0), keyType),
                        normalize(propertyType.getParameters().get(1), valueType));
            } else {
                Type valueType = typeFactory.get(((PluralAttribute<?,?,?>) p).getElementType().getJavaType());
                valueType = getPropertyType(p, valueType);
                propertyType = new SimpleType(propertyType,
                        normalize(propertyType.getParameters().get(0), valueType));
            }
        } else {
            propertyType = getPropertyType(p, propertyType);
        }

        Property property = createProperty(entityType, p.getName(), propertyType, annotated);
        entityType.addProperty(property);
    }
Create a new JPADomainExporter instance

@param namePrefix name prefix (default: Q)
@param nameSuffix name suffix (default: empty)
@param targetFolder target folder
@param serializerConfig serializer config
@param metamodel metamodel
@param charset charset (default: system charset)
querydsl-jpa-codegen/src/main/java/com/querydsl/jpa/codegen/JPADomainExporter.java