I wonder why you want to only pass selected properties? - I'd have thought that the whole object would be better, but obviously there must be a reason.
What I would do is create a separate lightweight class (The terminology for which is a Data Transfer Object) and then do a copy into it from the hibernate model object. This way you still have some good control over what is passed accross - using arrays is a messy solution in my opinion and will lead to uncertainties and errors.
The commons beanutils project may have by the way as if you keep the same name of the properties in both classes you can do a
Code:
BeanUtils.copyProperties(hibernateModelObject, dtoObject);
As a performance hit, yes there is one, but it is very small - and it is common in my experience to do a copy the other way from (say) a strutsForm to a model obejct in the action to pass the stuff back to the back end so it is used in practice.