Говоря о языке программирования Java можно часто увидеть такие аббревиатуры как: Java SE, JRE, JDK, IDE. Рассмотрим их.
Java SE
Java Standard Edition (Java SE) – это стандартное издание Java, именно под него разрабатываются клиентские приложения и этот сайт полностью посвящён Java SE. Приложения могут работать самостоятельно или в качестве апплетов веб-браузера.
Кроме стандартного издания бывают:
- Java Enterprise Edition (Java EE) для разработки приложений на стороне сервера, таких как Java сервлеты, JavaServer Pages (JSP) и JavaServer Faces (JSF).
- Java Micro Edition (Java ME) для разработки приложений под мобильные устройства, такие как телефоны.
JRE
Java Runtime Environment – среда выполнения Java. Это виртуальная машина Java, необходимая для запуска Java программ на компьютерах пользователя. В ней имеется всё, что необходимо для запуска Java приложений на вашей системе. JRE охватывает нужды большинства пользователей.
JDK
JDK (Java SE Development Kit) – набор инструментов разработчика для создания программ на Java. Включает в себя JRE плюс инструменты для разработки, отладки и мониторинга Java приложений.
Итак, чтобы определиться, что скачивать: JRE или JDK? Ответьте на вопрос: вы хотите только запускать Java программы или ещё и разрабатывать их? Если только запускать, то вам достаточно JRE. Если вы хотите разрабатывать программы, то вам необходим JDK. Набор разработчика JDK уже включает JRE, поэтому нет необходимости скачивать их оба по отдельности.
Версии Java
Кроме рассмотренных различных изданий, а также разных версий пакетов (для конечного пользователя и для разработчика), имеются номерные версии. В настоящее время актуальной является версия JDK 1.10. Кстати, JDK 1.10 = JDK 10.
Если вас интересуют ранние выпуски (что-то вроде беты), то для одинадцатой версии вы их найдёте по адресу
IDE
IDE (integrated development environment) – интегрированная среда разработки, предназначена для содействия разработчику, ускоряет процесс разработки программ. Обычно включает в себя редактор с подсветкой синтаксиса, справкой, автоматизированной компиляцией и запуском программ. IDE может быть создана для любого языка программирования, либо для конкретного языка, например, для Java. Интегрированная среды разработки бывают бесплатными и платными. Хорошей бесплатной IDE для Java является NetBeans.
Написано всё прекрасно.
НО
у вас на сайте можно(через комментарии)вывести любой html тег,
а значит, и любой скрипт.
Например, тег "<script>" с содержимым
var a = document.getElementsByTagName("html");
a.innerHTML = ""; — полностью очистит страницу, на которой написан отзыв с таким содержимым
Возможность выводить любой тег привела бы не только к описанной проблеме, но и к серьёзной уязвимости – XSS.
Как администратор, я могу вставить, например:
Но у обычного пользователя от этого останется только:
Если вам это интересно – можете поэкспериментировать с формой комментирования – я к этому отношусь спокойно. Потом я просто удалю тестовые комментарии.
Чтобы не ждать одобрения каждого комментария – указывайте в поле e-mail один и тот же адрес – первый комментарий одобряется вручную (ваш уже одобрил), остальные будут появляться автоматически.
<p>Text</p>
<script>alert(1)</script>
<script>
var a = document.getElementsByTagName("html");
a.innerHTML = "";
</script>