Я новичок в java здесь, я читал об аннотациях и xml, лично я узнаю, что xml имеет много преимуществ, таких как его можно разместить вне приложения, изменения могут быть сделаны без перекомпиляции файлов классов. Если я использую аннотации, если мне нужно внести изменения, нужно перейти в исходный код, и перекомпиляция должна быть выполнена. Если это так, то почему мы должны использовать аннотации
Аннотации против XML, преимущества и недостатки
Ответ 1
Преимущества аннотации:
1) Вся информация находится в одном файле (нет необходимости открывать два файла для настройки данного поведения)
2) Когда класс изменяется, нет необходимости изменять файл xml
Преимущества файла xml:
1) Четкое разделение между POJO и его поведением
2) Когда вы не знаете, какой POJO несет ответственность за поведение, легче найти POJO (поиск в подмножестве файлов, а не весь исходный код)
Ответ 2
Прежде всего, мы используем аннотации для многих других вещей, чем просто конфигурация.
Теперь: некоторые преимущества использования аннотаций для конфигурации
Читаемость.. Например, в конфигурации JPA гораздо более чистым становится объявление новых объектов с помощью аннотаций вместо файлов hbm.xml. Эти вещи меняются только на стадии разработки, поэтому нет проблем с перекомпиляцией кода. Когда вы используете xml файлы, вы должны часто открывать файл сущности и hbm для внесения изменений.. Это может вызвать некоторые ошибки.
Гибкость.. В файлах XML вам нужно написать все конфиги в "только один правильный способ". Это преимущество и недостаток в то же время.
Длина. Конфигурации на основе XML часто очень длинные (например, pom или hbm). Аннотации гораздо проще в использовании.
Ответ 3
Вопрос на самом деле трудно ответить коротким ответом.
В принципе, есть плюсы и минусы для всех форм конфигурации. Аннотации, xml или Java-конфигурация. Все плюсы и минусы действительны на 100%. Основная цель их - согласованность. Убедившись, что все в вашем проекте соответствуют тем же правилам.
Это тоже не вопрос ни о том, ни о другом. Потому что вы можете использовать любую комбинацию параметров конфигурации в своем приложении. Один или все три вместе взятые. Вам просто нужно сделать свои правила и придерживаться их
Итак, мое личное мнение. Помните, это все мое мнение, а не факт.
1) Аннотации по всем другим, потому что я могу настроить и кодировать намного быстрее
2) Конфигурация на Java для этих beans Я не могу аннотировать (они не мои классы, поэтому у меня нет источника для добавления аннотации)
3) xml с тем, что осталось, или мне нужно, чтобы он был полностью экстренным вне пакета моих классов, и я не хочу перекомпилировать и переупаковать. (Чрезвычайно редко, как будто мне никогда не приходило в голову, что мне это нужно)