Я хотел бы создать настраиваемый DAO, который расширяет ClassA и реализует SampleInterface. У SampleInterface есть метод, который должен быть реализован при создании этого DAO. Кроме того, соглашение об именах генерируемого мной DAO должно иметь DAO в конце имени класса, но не «Главная», так как инструменты спящего режима генерируют DAO Classes with Home в конце по умолчанию.Как сгенерировать настраиваемый DAO с помощью инструментов гибернации
Мои имена таблиц - это сотрудник, адрес, зарплата, и у меня есть сущность, и они находятся в пакете com.mycompany.model. В настоящее время у меня есть Address, Employee, Salary Entities со всеми аннотациями и отображением в нем. Я хочу генерировать AddressDAO, EmployeeDAO и SalaryDAO, используя ниже обратную инженерную стратегию.
Ниже мой класс Reverse Engineering Стратегия
public class DAOReverseEngineeringStrategy extends
DelegatingReverseEngineeringStrategy {
public DAOReverseEngineeringStrategy(ReverseEngineeringStrategy delegate) {
super(delegate);
// TODO Auto-generated constructor stub
}
@Override
public Map tableToMetaAttributes(final TableIdentifier tableIdentifier) {
Map<String, MetaAttribute> metaAttributes = super
.tableToMetaAttributes(tableIdentifier);
if (metaAttributes == null) {
metaAttributes = new HashMap<String, MetaAttribute>();
}
MetaAttribute attributeExtends = new MetaAttribute("extends");
attributeExtends.addValue("ClassA");
metaAttributes.put("extends", attributeExtends);
MetaAttribute attributeImpl = new MetaAttribute("implements");
attributeImpl.addValue("SampleInterface");
metaAttributes.put("implements", attributeImpl);
MetaAttribute attributeImport = new MetaAttribute("extra-import");
attributeImport.addValue("com.mycompany.ClassA");
attributeImport.addValue("com.mycompany.SampleInterface");
attributeImport.addValue("com.mycompany.model.*");
metaAttributes.put("extra-import", attributeImport);
return metaAttributes;
}
}
Спасибо.