2016-03-26 3 views
0

В JSP мы можем легко использовать классы Bootstrap, как в HTML. Но я видел, что в некоторых проектах, люди используют для библиотеки тегов таким образом, добавив зависимость Maven как:Цель использования mavenized Bootstrap

<dependency> 
    <groupId>com.efsavage.twitter.bootstrap</groupId> 
    <artifactId>bootstrap-maven</artifactId> 
    <version>2.3.1</version> 
</dependency> 

Тогда включая TagLib в свой файл JSP:

<%@ taglib uri="http://efsavage.com/twitter-bootstrap" prefix="bs" %> 

И, наконец, используя его теги нравится:

<bs:button text="submit" /> 

Мой вопрос заключается в том, когда и почему этот путь был бы лучше, чем обычно связывая CSS файл Twitter Bootstrap и используя свои классы на наших страницах JSP?

ответ

2

Для этого есть несколько причин. Если вы хотите включить 3rd CSS партии или ресурс JavaScript, у вас есть два варианта:

  • точку непосредственно на внешний ресурс, который служит его
  • Скачать его и включить его в проект

Указание на внешние ресурсы может быть проблематичным: они могут умереть в любое время или просто временно остановиться. При таком подходе вы зависите от чего-то вне вашего контроля, что, как правило, плохое.

Это оставляет возможность загрузки его вручную и включения его в проект. Концептуально это похоже на библиотеку, а Maven - это инструмент, который должен справиться с этим. Следовательно, добавление этого в качестве зависимости от Maven имеет смысл: вы заявляете, что ваш проект зависит от внешнего ресурса.

От the GitHub repo:

Эта библиотека дает вам возможность отказаться Twitter Bootstrap в проект как зависимость Maven, что означает, что вы не должны включать эти файлы сторонних в собственном управления версиями.

+0

Я согласен с тем, что полагаться на внешние ресурсы - это плохая идея, и в целом ваша точка зрения о maven истинна. Я по-прежнему думаю, что это в наших ресурсах проекта, и использование простых тегов html дает нам большую гибкость, чтобы быть согласной с будущими обновлениями начальной загрузки или изменением структуры. В этих случаях нам нужно просто изменить значения классов или файлы css. Кроме того, если у нас уже есть опыт использования бутстрапа, мы можем использовать наш опыт, используя его таким же образом. –

+0

@Ali_Seyedi Ну, с зависимостью Maven, обновление - это всего лишь одно изменение элемента ''. Вам даже не нужно ничего загружать вручную;). – Tunaki

+0

Только две последние вещи: 1. Можно ли использовать maven, но не taglib для этого ?! 2. Можем ли мы быть уверены, что зависимость будет обновлена? –