Реализация преобразователя файла Spring Boot в java

Я создал отдельное java-приложение, которое преобразует несколько форматов файлов друг в друга.

Таким образом, он работает над Main.java, например

new DocxToHtmlConverter().docxToHtml("File.docx",".File.html");

Я хочу реализовать приложение весенней загрузки, которое делает то же самое через URL-адрес localhost.

Я также реализую алгоритм выбора поверх этого. Например, предложения if для выполнения требуемого алгоритма на основе расширений входной строки (можно использовать endWith(".docx") и т. д.

По сути, если я напишу как localhost:8080/{inputFile,outputFile}, а затем на основе расширения файла будет выбран соответствующий класс, и я смогу загрузить полученный файл. В данном случае это html.

Я никогда раньше не использовал Spring, так что простите меня за мое игнорирование. Я даже не знаю, допустимы ли такие операции с Spring. Вот почему я спрашиваю.

Какой подход лучше всего использовать? любые полезные ссылки или идеи приветствуются.

Вы можете попробовать настроить springboot, следуя руководству здесь spring.io/guides/gs/весна-загрузка, и как только вы будете готовы, вы можете просто настроить свой собственный метод POST и реализовать его логику :). Если вам все еще нужна дополнительная информация, не стесняйтесь спрашивать здесь.

vc73 18.04.2019 12:11
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
1
234
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Есть много способов сделать это. В этом ответе описывается одно решение, которое позволяет вам сохранять независимость вашей библиотеки от Spring.

Вы должны создать класс конфигурации, который будет определять bean-компонент с вашей реализацией. Вы сможете напрямую внедрить этот компонент в любой компонент в вашем весеннем проекте.

@Configuration
public class DocxToHtmlConverterConfig{
  @Bean
  public DocxToHtmlConverter docxToHtmlConverter(){
    return new DocxToHtmlConverter();
  }
}

Этот класс конфигурации создаст bean-компонент с реализацией DocxToHtmlConverter, которую вы можете автоматически добавить в любой компонент вашего приложения следующим образом.

@RestController //or @Controller or @{any annotation that declares a component}
public class MyService{
  @Autowired
  DocxToHtmlConverter docxToHtmlConverter;

  public void convertFile(){
    docxToHtmlConverter.docxToHtml("File.docx",".File.html");
  }   
}

да, я действительно справился. Удивительно, но это было очень легко сделать. Я просто потерялся во всех этих уроках и примерах. Мне все еще нужно глубоко понять все компоненты. Это работает, и это нормально. Но я не знаю, почему это работает и как это работает. В любом случае, я приму ваш ответ.

Sojimanatsu 18.04.2019 23:29

Другие вопросы по теме