Зависимость - введите компонент ResourceLoader
и используйте его для доступа к PDF, например,
import org.springframework.context.ResourceLoaderAware
import org.springframework.core.io.Resource
import org.springframework.core.io.ResourceLoader
class MyService implements ResourceLoaderAware {
ResourceLoader resourceLoader
InputStream getPdfContent() {
Resource pdf = resourceLoader.getResource("classpath:path/toPdf.p12")
pdf.inputStream
}
}
Для меня все сводится к тому, где вы хотите, чтобы накладные расходы были, либо у вас будет набор разных классов для представления ваших DTO, либо у вас будет набор методов, каждый из которых возвращает один и тот же объект домена, но с разными "гидратированными" полями.
Несколько вопросов, которые я задам, чтобы помочь принять решение:
Я немного лично предпочитаю DTO, так как я чувствую, что долгосрочное обслуживание вашей системы будет проще. Если ваша группа из одного человека,