javacode banner

Словарь терминов Java

Java EE
Java Platform, Enterprise Edition, сокращенно Java EE (до версии 5.0 — Java 2 Enterprise Edition или J2EE) — набор спецификаций и соответствующей документации для языка Java, описывающей архитектуру серверной платформы для задач средних и крупных предприятий. Спецификации детализированы настолько, чтобы обеспечить переносимость программ с одной реализации платформы на другую. Основная цель спецификаций — обеспечить масштабируемость приложений и целостность данных во время работы системы. J2EE во многом ориентирована на использование её через веб как в интернете, так и в локальных сетях. Вся спецификация создаётся и утверждается через JCP (Java Community Process) в рамках инициативы Sun Microsystems Inc. J2EE является промышленной технологией и в основном используется в высокопроизводительных проектах, в которых необходима надежность, масштабируемость, гибкость. Популярности J2EE также способствует то, что Sun предлагает бесплатный комплект разработки, SDK, позволяющий предприятиям разрабатывать свои системы, не тратя больших средств. В этот комплект входит сервер приложений с лицензией для разработки.
JDBC
(англ. Java DataBase Connectivity — соединение с базами данных на Java) — платформенно-независимый промышленный стандарт взаимодействия Java-приложений с различными СУБД, реализованный в виде пакета java.sql, входящего в состав Java SE. JDBC основан на концепции так называемых драйверов, позволяющих получать соединение с базой данных по специально описанному URL. Драйверы могут загружаться динамически (во время работы программы). Загрузившись, драйвер сам регистрирует себя и вызывается автоматически, когда программа требует URL, содержащий протокол, за который драйвер отвечает.
JNDI
Java Naming and Directory Interface (JNDI) это Java API, организованный в виде службы каталогов, который позволяет Java клиентам открывать и просматривать данные и объекты по их именам. API предоставляет: механизм ассоциации(связывания) объекта с именем интерфейс в виде директорий позволяющий общие запросы интерфейс событий, который позволяет определить клиентам, когда элементы директории были изменены LDAP расширение для поддержки дополнительных возможностей LDAP сервисов
Java Web Start
Java Web Start (часто JavaWS) — технология компании Sun Microsystems, позволяющая запускать приложения на Java из браузера. Основана на протоколе Java Network Launching Protocol (JNLP). В отличие от апплетов приложения Web Start запускаются не в окне браузера и не имеют с ним прямой связи. Релиз версии 1.0 Sun выпустила в Марте 2001 года. Начиная с версии J2SE 1.4 Web Start включается в комплектацию Java Runtime Environment по умолчанию.
Facelets
Facelets — открытый веб-фреймворк, распространяемый под лицензией Apache license и альтернативная технология управления представлением для JavaServer Faces (JSF). Фреймворк требует для функционирования валидные XML документы. Это означает, что веб-страницы должны быть созданы с использованием языка разметки XHTML. Facelets поддерживает все компоненты JSF и создаёт собственное дерево компонент, отражая view (см. MVC) для JSF-приложения. В Facelets полностью устранена широко известная проблема смешанного контента, присущая JavaServer Pages.
JSF
JavaServer Faces (JSF) — это фреймворк для веб-приложений, написанный на Java. Он служит для того, чтобы облегчать разработку пользовательских интерфейсов для Java EE приложений. В отличие от прочих MVC фреймворков, которые управляются запросами, подход JSF основывается на использовании компонентов. Состояние компонентов пользовательского интерфейса сохраняется, когда пользователь запрашивает новую страницу и затем восстанавливается, если запрос повторяется. Для отображения данных обычно используется JSP, Facelets, но JSF можно приспособить и под другие технологии, например XUL.
JNLP
Java Network Launch Protocol — сетевой протокол запуска приложений на языке Java. Этот протокол JNLP описывает запуск приложений Java Web Start. JNLP состоит из набора правил, определяющих, как конкретно реализуется запускающий механизм. Файлы JNLP включают такую информацию, как месторасположение jar архивов, имя главного класса приложения. Правильно сконфигурированный браузер передает JNLP файлы среде JRE, которая загружает приложение на компьютер клиента и запускает его. Файл JNLP — это XML-файл.
JSTL
JavaServer Pages Standard Tag Library - «стандартная библиотека тегов JSP». Она расширяет спецификацию JSP, добавляя библиотеку JSP тегов для общих нужд, таких как разбор XML данных, условная обработка, создание циклов и поддержка интернационализации. JSTL — конечный результат JSR 52, разработанного в рамках JCP(Процесса Java сообщества). 8 мая 2006 был выпущен релиз JSTL 1.2 JSTL является альтернативой такому виду встроенной в JSP логики, как скриплеты, то есть прямые вставки Java кода. Использование стандартизованного множества тегов предпочтительнее, поскольку получаемый код легче поддерживать и проще отделять бизнес-логику от логики отображения.
Сервлет
Сервлет является Java-интерфейсом, реализация которого расширяет функциональные возможности сервера. Сервлет взаимодействует с клиентами посредством принципа запрос-ответ. Хотя сервлеты могут обслуживать любые запросы, они обычно используются для расширения веб-серверов. Для таких приложений технология Java Servlet определяет HTTP-специфичные сервлет классы. Пакеты javax.servlet и javax.servlet.http обеспечивают интерфейсы и классы для создания сервлетов.
Apache Ant
Apache Ant (англ. ant — муравей и акроним — «Another Neat Tool») — утилита для автоматизации процесса сборки программного продукта. Является платформонезависимым аналогом утилиты make (в качестве «Makefile» применяется «build.xml»). Ant был создан в рамках проекта Jakarta, сегодня — самостоятельный проект первого уровня Apache Software Foundation. Первая версия была разработана инженером Sun Microsystems Джеймсом Дэвидсоном (James Davidson (англ.)русск.), который нуждался в утилите, подобной make, разрабатывая первую референтную реализацию J2EE. Ant, в отличие от другого сборщика проектов Apache Maven, обеспечивает императивную, а не декларативную сборку проекта.
Apache Maven
Apache Maven — фреймворк для автоматизации сборки проектов, специфицированных на XML-языке POM (англ. Project Object Model). Слово maven происходит из языка Идиш и означает примерно «собиратель знания». Maven, в отличие от другого сборщика проектов Apache Ant, обеспечивает декларативную, а не императивную сборку проекта. То есть, в файлах проекта pom.xml содержится его декларативное описание, а не отдельные команды. Все задачи по обработке файлов Maven выполняет через плагины.
Hudson
Hudson — инструмент непрерывной интеграции, написанный на Java. Запускается в контейнере сервлетов, таких как Apache Tomcat или GlassFish. Поддерживает инструментарий для работы с разными системами контроля версий, включая CVS, Subversion, Mercurial, Git и Clearcase, может собирать проекты Apache Ant и Apache Maven, а также исполнять shell-скрипты и команды Windows. Сборка проектов может быть назначена на разные события, например, производиться по расписанию, используя механизм подобный cron, либо стартовать когда другая сборка уже собрана, либо при запросе определённого URL.
Groovy
Groovy — объектно-ориентированный язык программирования разработанный для платформы Java как дополнение к языку Java с возможностями Python, Ruby и Smalltalk. Groovy использует Java-подобный синтаксис с динамической компиляцией в JVM байт-код и напрямую работает с другим Java кодом и библиотеками. Язык может использоваться в любом Java проекте или как скриптовый язык. Groovy завершил процесс стандартизации в Java Community Process JSR 241. Возможности Groovy (отличающие его от Java): Статическая и динамическая типизация, Встроенный синтаксис для списков, ассоциативных массивов, массивов и регулярных выражений, Замыкания, Перегрузка операций
Grails
Grails — программный каркас для создания веб-приложений, написанный на скриптовом языке Groovy, который в свою очередь основан на Java. Grails создан под сильным влиянием широко известного Ruby on Rails и основан на шаблоне «Модель-представление-поведение» (MVC). Grails был создан с целью привлечь интерес пользователей к платформе Java и дать Java-разработчикам возможности для быстрого построения веб-приложений с лёгкостью и гибкостью, которая была недоступна прежде.
Hibernate
Hibernate — библиотека для языка программирования Java, предназначенная для решения задач объектно-реляционного отображения (object-relational mapping — ORM). Она представляет собой свободное программное обеспечение с открытым исходным кодом (open source), распространяемое на условиях GNU Lesser General Public License. Данная библиотека предоставляет лёгкий в использовании каркас (фреймворк) для отображения объектно-ориентированной модели данных в традиционные реляционные базы данных.
Spring
Spring Framework (или коротко Spring) — универсальный фреймворк с открытым исходным кодом для Java-платформы. Так же существует форк для платформы .NET Framework, названный Spring.NET. Несмотря на то, что Spring Framework не обеспечивал какую-либо конкретную модель программирования, он стал широко распространённым в Java-сообществе главным образом как альтернатива и замена модели Enterprise JavaBeans. Spring Framework предоставляет бо́льшую свободу Java-разработчикам в проектировании, кроме того, он предоставляет хорошо документированные и лёгкие в использовании средства решения проблем, возникающих при создании приложений корпоративного масштаба. Между тем, особенности ядра Spring Framework применимы в любом Java-приложении, и существует множество расширений и усовершенствований для построения веб-приложений на Java Enterprise платформе. По этим причинам Spring приобрёл большую популярность и признаётся разработчиками как стратегически важный фреймворк.
JPA
JPA – это технология, обеспечивающая объектно-реляционное отображение простых JAVA объектов и предоставляющая API для сохранения, получения и управления такими объектами. У JPA существуют разные реализации: Hibernate, Oracle TopLink, Apache OpenJPA. Состоит из трех основных пунктов: API – интерфейсы в пакете javax.persistance Набор интерфейсов, которые позволяют организовать взаимодействие с ORM провайдером. JPQL – объектный язык запросов. Очень поход на SQL, но запросы выполняются к объектам. Metadata – аннотации над объектами. Набор аннотаций, которыми мы описываем метаданные отображения. Тогда уже JPA знает какой объект в какую таблицу нужно сохранить. Метаданные можно описывать двумя способами: XML файл можно через аннотации.