Первоначальная идея была проста — пользователи загружают байт-коды Java по сети и выполняют их на своих машинах. Программы Java, работающие под управлением веб-браузеров, называются аплетами. Для использования аплета требуется веб-браузер, поддерживающий язык Java и способный интерпретировать байт-код. Лицензия на исходные коды языка Java принадлежит компании Oracle, настаивающей на неизменности как самого языка, так и структуры его основных библиотек, и поэтому аплеты Java должны запускаться в любом браузере, который поддерживает Java. Посещая всякий раз веб-страницу, содержащую аплет, вы получаете последнюю версию этой прикладной программы. Но важнее другое: благодаря средствам безопасности виртуальной машины вы избавляетесь от необходимости беспокоиться об угрозах, исходящих от вредоносного кода.
Ввод аплета на веб-странице осуществляется практически так же, как и встраивание изображения. Аплет становится частью страницы, а текст обтекает занимаемое им пространство. Изображение, реализуемое аплетом, становится активным. Оно реагирует на действия пользователя, изменяет в зависимости от них свой внешний вид и выполняет обмен данными между компьютером, на котором выполняется аплет, и компьютером, где этот аплет постоянно хранится.
На рис. 1 приведен характерный пример динамической веб-страницы, выполняющей сложные вычисления и применяющей аплет для отображения моделей молекул. Чтобы лучше понять структуру молекулы, ее можно повернуть или изменить масштаб изображения, пользуясь мышью. Подобные эффекты нельзя реализовать на статических веб-страницах, тогда как аплеты делают это возможным.
Когда аплеты только появились, они наделали немало шума. Многие считают, что именно привлекательность аплетов стала причиной ошеломляющего успеха Java. Но первоначальный энтузиазм быстро сменился разочарованием. В разных версиях браузеров Netscape и Internet Explorer поддерживались разные версии языка Java, причем некоторые из этих версий заметно устарели. Эта неприятная ситуация создавала все больше препятствий при разработке аплетов, в которых можно было бы воспользоваться преимуществами последней версии Java. Ныне на большинстве веб-страниц вместо аплетов применяются сценарии JavaScript или графические средства Flash, когда требуется получить динамические эффекты в браузере. С другой стороны, Java стал самым распространенным языком для разработки серверных приложений, которые формируют веб-страницы и поддерживают логику работы серверной части.