Академический Документы
Профессиональный Документы
Культура Документы
Кафедра ІУС
Практичне заняття № 1
Виконали: Прийняла:
ст. гр. ІТКН-17-6 Артем’єва О. Ю.
Проценко А. В. з оцінкою «____________»
Максименко І. С. «____»_______________20___р.
Орлов В. Ю.
Котаєв І. Е.
Харків 2021
Мета заняття: Реализовать базовые CRUD (Create, Read, Update, Delete)
операции с использованием SOAP web-сервисов согласно варианту задания.
Хід роботи
Вариант №4: Страны, имеет 3 атрибута: площадь (float), население (int),
название (String)
В ході роботи було створено наступні класи:
Клас Country:
package lab1.country;
import javax.xml.bind.annotation.XmlRootElement;
import java.util.Random;
}
Клас CountryWebService:
package lab1.country;
import javax.jws.WebMethod;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
@WebService
@SOAPBinding(style = SOAPBinding.Style.RPC) //определение типа SOAP-
связывания
public interface CountryWebService { //интерфейс определяет методы, которые
будет представлять SOAP-вебсервис
@WebMethod //аннотация для того, чтобы Publisher понимал этот метод как
SOAP
//метод возвращает объект Country по его Id
Country getCountryById(int id);
@WebMethod
//метод удаляет объект Country по его Id
boolean removeCountryById(int id);
@WebMethod
//метод обновляет объект Country, заменяя его данные
boolean updateCountry(Country country);
@WebMethod
//возвращает массив всех объектов класса Country
Country[] getAllCountries();
}
Клас CountryWebServiceImpl:
package lab1.country;
import javax.jws.WebService;
import java.util.HashMap;
import java.util.Map;
import java.util.Random;
/*
определение мапинга веб-сервиса, именно здесь и присутствует пакет, о котором
упоминалось раньше.
*/
@WebService(endpointInterface = "lab1.country.CountryWebService")
public class CountryWebserviceImpl implements CountryWebService {
import lab1.country.CountryWebserviceImpl;
import javax.xml.ws.Endpoint;
public class CountryPublisher {
//точка входа в JVM, выполнение любой Java программы начинается с main-
метода
public static void main(String[] args) {
/*запуск "вещания", Endpoint принимает 2 параметра - адрес сервиса и
его реализацию.
* localhost - адрес машины, localhost - будет доступен только на
локальном компьютере
* 8081 - номер порта, надо чтобы порт не был занят, занятые порты
можно проверить с помощью программы TCP View
* /ws/person - мапинг на SOAP сервис
*/
Endpoint.publish("http://localhost:8081/ws/country", new
CountryWebserviceImpl());
}
}