Es kommt darauf an, welche Fremdschlüsselbeziehungen (foreign keys) zwischen MotorData und MarkeData bzw. zwischen MotorData und DescData bestehen.
Angenommen, deine Klasse MotorData hat ein Attribut "type" vom Typ String, ein Attribut "brand" vom Typ MarkeData und ein Attribut "description" vom Typ DescData. Dann sollte es so aussehen:
Code:
Criteria criteria = session.createCriteria(MotorData.class);
criteria.add(Restrictions.eq("type", type));
criteria.add(Restrictions.eq("brand", marke));
criteria.add(Restrictions.eq("description", beschreibung));
Wichtig hierbei ist, dass die Tabelle MotorData irgendwie mit MarkeData (bzw. DescData) verknüpft ist. Entweder durch ein Attribut vom Typ MarkeData in MotorData oder durch ein Attribut vom Typ MotorData in MarkeData. Wobei Collections genauso gehen, also z.B. ein Attribut vom Typ Set<MarkeData> in MotorData.