Как работать со списками массивов (Java) в Spring Boot? т. е. автоматическое подключение/внедрение зависимостей [закрытоJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Как работать со списками массивов (Java) в Spring Boot? т. е. автоматическое подключение/внедрение зависимостей [закрыто

Сообщение Anonymous »

Я проходил онлайн-оценку кодирования, где мне нужно было «рефакторить/исправить» некоторый API Spring Boot, и у него были Cart.java, Catalog.java и Product.java Model и, если я правильно помню (IIRC), Product.java был единственным Класс Model с аннотацией @Component (побочный вопрос, но когда использовать @Component вместо @Entity для этих типов классов model или POJO или DTO?), то есть других классов Cart.java и Catalog, где создается с использованием ключевого слова "new", что мне показалось совершенно неправильным.
Кроме того, некоторые из этих классов, например Cart.java, имели уровень класса /fields, которые представляли собой структуры данных, такие как Списки массивов, и для создания экземпляров они использовали «новую» клавиатуру внутри конструктора; это правильно? Я продолжал получать ошибки «исключения создания экземпляра компонента», и у меня было ощущение, что это как-то связано с этим, т. е. (ТАКЖЕ мои вопросы приведены ниже!)

Код: Выделить всё

public class Cart {

private List
 products;

public Cart() {
this.products = new ArrayList();
}
ВОПРОСЫ:
  • Хороша ли такая практика? Или любой тип Java POJO (простой-старый-java-объект), то есть класс Model, который по существу имеет методы получения/установки, всегда должен быть аннотирован как Spring Bean (или использование XML/свойств для более старых версий)?
  • Что касается структур данных, таких как списки массивов, упомянутые выше, следует ли их объявлять с использованием ключевого слова «новое» на уровне класса/поля или делать это внутри конструктора, как в примере кода, который я опубликовал?
  • Код, который я давал для оценки, также имел метод @PostConstruct в классе ShoppingCartService, который, конечно же, является типичным классом обслуживания. У него был блок try/catch, в котором использовались методы ObjectMapper() и getResourceAsStream() для чтения products.json. файл с образцами фиктивных данных; Я продолжал получать исключения, как я уже сказал, для beanInstantiation и т. д., а также некоторые для этого метода public void init(), помеченного аннотацией @PostConstruct, которая была в этом ShoppingCartService — не должны ли все методы @PostConstruct находиться в основном SpringBootApplication, в данном случае в ShopApplication.java, где статические void Основной метод лежит?
Будем признательны за любую информацию! Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/789 ... pendency-i
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»