19 Июля 2018 08:40 
Навигация
 +  - 
Скачать игры
Сейчас на сайте
19.07.2018
djekiwa...
03:51:58
offline
19.07.2018
Warhangel
05:15:43
offline
16.07.2018
tuvorst
2 дней
offline
14.07.2018
balkar
5 дней
offline
11.07.2018
qaz121wsx
1 неделя
offline
Последние фото
Game of Blocks : WesterosCraft and Game of Thrones
Game of Blocks : Wes...
Альбом: Скриншоты

Вынос трёх пати куполом
Вынос трёх пати куполом
Альбом: Скриншоты



Альбом: Флора

Последние видео
Видео ТРИ СУДЬБЫ - Короткометражный фэнтези-боевик : Короткометражный CGI-фильм, посвященный игре The Elder Scrolls Online.

Игрофильмы:  ТРИ СУДЬБЫ - Короткометражный фэнтези-боевик

Видео Rhine Falls : Rhine Falls Live Camera streeeam

Онлайн камеры:  Rhine Falls

Видео Live Cam, Central Memorial Park, Calgary, Alberta : Central Memorial Park is a park located in central Calgary\

Онлайн камеры:  Live Cam, Central Memorial Park, Calgary, Alberta

Наша кнопочка
FAQ7.ru
Код:
RSS каналы
Новости
Комменты
Форум
Статьи
Фото
Файлы
Ссылки
Объявления
Реклама
Регистрация сайта в каталогах, раскрутка и оптимизация сайта, контекстная реклама
Автор темы: Warhangel
ID темы: 193
Информация о теме:
Имеются 1 сообщений по данной теме, которая была просмотрена 2380 раз.
Реклама
livecoin Обменник
Просмотр темы
Логин:
Пароль:  
Форум » Тематические » Программирование » Java
Просмотр темы
Текущий рейтинг: (Всего: 0 голосов)  
Ответить
Иконка 
Java Service
Наверх Распечатать сообщение #1
Опубликовано 23-08-2010 02:15
Аватар пользователя

Супер Администратор



Сообщений: 2117
Вас поблагодарили: 18
раз(а) в 18 сообщениях

Зарегистрирован: 24.03.10
Со дня регистрации: 3039
Откуда: Россия
Пол: Мужской

Скрыть награды


Пожаловаться на это сообщение 

Java Service

Я думаю, что не все знают, что в Java есть зачатки модульности (которые были полностью реализованы в 1.7), поэтому хотелось бы рассказать о них

Сама система элементарна: создается файл с названием интерфейса и в него вносятся имплементации этого интерфейса, после чего этот файл помещается в манифест + простенький код, чтобы взять имплементацию (в самой яве это реализовано в виде рефлектиона). Давайте посмотрим на практике:

MyInterface

public interface MyInterface {
   void myMethod();
   void onlyFirstImpl();
}


Main

import java.util.ServiceLoader;


public final class Main {

   /**
    * @param args
    */
   public static void main(String[] args) {
      ServiceLoader<MyInterface> service = ServiceLoader.load(MyInterface.class);
      for(MyInterface implementation : service) {
         implementation.myMethod();
         if(implementation.getClass().getSimpleName().equalsIgnoreCase(&qu ot;firstimplementation"))
            implementation.onlyFirstImpl();
      }

   }

}


Собственно, что мы видим в маине? - загрузка java service, а затем действия с найденым массивом имплементаций, так же в код я включил проверку на нужную имплементацию по имени класса имплементации.
Далее нам требуется в нашем модуле создать имплементации нашего интерфейса (MyInterface), после чего положить в папку манифеста файл с именем:

package.interfaceName


В нашем же случае оно будет выглядеть так:

MyInterface


Так же потребуется внутрь этого файла записать информацию о имплементациях, например:

myPackage.Implementation
trololo.module.Impelement


(ц) programmos, копипаст разрешен лицензией бсд
 Offline
 
Посетить сайт автора
Цитировать
Ответить
Здесь присутствуют: 1 (пользователей: 0, гостей: 1)

« Предыдущая тема | Следующая тема »
 RSS Перейти на форум:
Розыгрыши 728х90

Последние объявления
ФотоЗаголовокГородРазмещено
ПАО «Северсталь» реализует неликвиды, невостребованные МТР
• Хозяйство - Оборудование Цена: 1 1
Другой12.07.2018
(на 1 месяц)
Филиал «КЧХК» АО «ОХК «УРАЛХИМ» в Кирово-Чепецке реализует неликвиды
• Хозяйство - Оборудование Цена: 1 1
Киров24.06.2018
(на 1 месяц)
ПАО «Казаньоргсинтез» реализует неликвиды в ассортименте
• Хозяйство - Оборудование Цена: 1 1
Казань22.06.2018
(на 1 месяц)
ОАО ТКЗ «Красный котельщик» продает металлопрокат в ассортименте
• Хозяйство - Сырье и материалы Цена: 1 1
Ростов-на-Дону20.06.2018
(на 1 месяц)
Купим автоматическую систему газового пожаротушения
• Хозяйство - Оборудование Цена: 1 1
Красноярск24.04.2018
(на 6 месяцев)
Облако тегов тем форума
Гайд: Ездовые животные, Mass Effect 3 - первая информация, Делаем вместо ника unconnected, Угостить человеческим мясом обещают в Берлине, Cделать два гейм сервера через один логин, Path of Exile: Превью от IGN AU на основе альфа-версии игры, Видеообзор действий классов дальнего боя, Витая пара, Видеоотчет о финале Intel Challenge Super Cup X, Lineage 2 Goddess of Destruction, 3D-технологии Magic Leap удивляют своей реалистичностью, Гайд по Монаху в Mists of Pandaria, Sarif Industries - Рекламный трейлер, Обзор PvP-нововведений в Катаклизме, Несколько правил выживания в нулях
Главная Статьи Файлы Форум Ссылки Новости Фотогалерея Объявления Видео Файлобменник Гороскоп Поиск по торрентам Радио Видеочат
Яндекс.Метрика
Powered by PHP-Fusion copyright © 2002 - 2018 by Nick Jones. Released as free software without warranties under GNU Affero GPL v3.