JAVA NA SERWERZE SPRING. Waldemar Korłub. Platformy Technologiczne KASK ETI Politechnika Gdańska
|
|
- Marta Muszyńska
- 6 lat temu
- Przeglądów:
Transkrypt
1 JAVA NA SERWERZE SPRING Waldemar Korłub Platformy Technologiczne KASK ETI Politechnika Gdańska
2 Java na serwerze 2 Aplikacje internetowe stanowią jeden z głównych obszarów zastosowań Javy Bogaty rynek frameworków
3 Spring MVC Action-driven MVC Pierwsze wydanie: 2002 rok Oryginalnie lekka odpowiedź na ciężką ówcześnie platformę J2EE dla aplikacji klasy enterprise Aktualna wersja: 4.x.x Obecnie Spring MVC jest tylko jednym z wielu komponentów platformy Spring, która rozmiarami nie ustępuje Javie EE Kolejne wersje uwzględniają najnowsze trendy w branży i kreują nowe trendy np. popularyzacja wstrzykiwania zależności
4 Platforma Spring Spring Framework Spring Boot Spring XD Spring Data Spring Cloud Spring Integration Spring Social Web Services Web Flow Spring Security Spring Mobile Session Spring Batch Spring HATEOAS Spring LDAP Spring For Android
5 Spring Boot 5 Nie jest frameworkiem internetowym per se Aplikacja internetowa oparta o Spring Boot wykorzystuje Spring MVC oraz inne moduły Spring Boot ułatwia konfigurację projektu Konwencje ponad konfigurację Ułatwia budowanie wersji dystrybucyjnej Archiwum JAR zawierające wszystkie zależności oraz osadzony serwer Tomcat (i jego konfigurację) n Może też zawierać init script do użycia w /etc/init.d Prosta dystrybucja pojedynczy plik Proste uruchamianie bez wdrażania na osobny serwer n java -jar app.jar
6 Spring Initializr 6 Umożliwia łatwy wybór modułów i wygenerowanie szkieletu projektu Uzyskany projekt wykorzystuje Spring Boot Maven/Gradle do budowania aplikacji
7 7 REST API
8 Back-end 8 Przed erą mobilną aplikacja serwerowa typowo generowała dokumenty HTML dla przeglądarki Współcześnie klient w przeglądarce jest jednym z wielu kanałów dostępu do usług na serwerze Aplikacje mobilne smartphony, tablety, smartwatche Smart TV, Smart Car Nowe aplikacje klienckie wymagają programistycznego API nie dokumentów HTML
9 Back-end i aplikacje klienckie 9 Skoro serwer i tak musi udostępniać API, to klient w przeglądarce również mógłby z niego korzystać To samo API na serwerze dla wszystkich aplikacji klienckich łatwiejsza konstrukcja serwera Aplikacje klienckie w przeglądarce (web front-end) wykorzystują JavaScriptowe frameworki takie jak: Angular (Google) React (Facebook) Ember Backbone.js
10 API w architekturze REST 10 Serwer udostępnia zasoby aplikacjom klienckim Dane przesyłane w uniwersalnych formatach, np. JSON, XML Zasoby identyfikowane adresami URI Hierarchiczna struktura adresów, przykładowo: /books kolekcja książek /books/17 pojedyncza książka (o id=17) /books/17/authors kolekcja autorów wybranej książki
11 API w architekturze REST 11 Operacje na zasobach wykonywane przy użyciu żądań HTTP: GET/POST/PUT/DELETE Żądanie Kolekcja elementów, np. /books Pojedynczy element, np. /books/17 GET Pobranie kolekcji Pobranie elementu POST Dodanie elementu do kolekcji Nie stosuje się PUT Nie stosuje się Aktualizacja elementu DELETE Usunięcie całej kolekcji Usunięcie elementu
12 API w architekturze REST 12 Wyniki sygnalizowane kodami odpowiedzi HTTP, np.: Żądanie Kolekcja elementów, np. /books Pojedynczy element, np. /books/17 GET 200 OK 200 OK 404 Not Found POST 201 Created (+ Location) 403 Forbidden 405 Method not allowed PUT 405 Method not allowed 200 OK 401 Unauthorized DELETE 200 OK 403 Forbidden 200 OK 403 Forbidden 404 Not Found
13 Narzędzia do pracy z RESTowym API 13 Do pracy z API konieczne są narzędzia do budowania żądań HTTP (GET/POST/PUT/DELETE) Back-end deweloper chce rozwijać i testować API niezależnie od pracy front-end deweloperów Popularne narzędzia: Postman n Aplikacja Chrome (do pobrania z Chrome Web Store) lub n Aplikacja standalone (do pobrania ze strony producenta) SoapUI n Standalone
14 14 REST API w Springu Spring Boot + Spring MVC
15 Request-driven MVC 15 odpowiedź HTTP Aplikacja kliencka (np. przeglądarka) generuje treść odpowiedzi, np. HTML, JSON żądanie HTTP Front-controller Model renderuje wybiera kontroler na podstawie routingu (dispatching) wybiera widok, zwraca model Model zwraca wyniki Controller wywołuje View Logika biznesowa
16 Spring MVC: action-driven MVC 16 Front-controller DispatcherServlet (klasa dostarczana przez framework) Kontrolery Modele danych dla widoków słownik Model Szablony widoków Thymeleaf/JSP i wiele innych Logika biznesowa poza
17 Action-driven MVC w kontekście REST API 17 Front-controller bez zmian Routing bez zmian Kontrolery bez zmian Modele danych dla widoków odpowiedzi API Model w MVC określa, które wyniki logiki biznesowej mają zostać zaprezentowane klientowi Szablony widoków brak Aplikacja nie generuje widoków (dokumentów HTML) Aplikacja zwraca dane w wybranym formacie, np. JSON Logika biznesowa poza kontrolerem bez zmian
18 Wygenerowanie projektu Spring Initializr: 2. Określenie GroupId oraz ArtifactId 3. Wybór modułów/zależności: Web JPA Derby (baza danych) 4. Generate Project 5. Pobranie archiwum ZIP i rozpakowanie 6. Otwarcie projektu w ulubionym IDE
19 Punkt wejścia aplikacji public class BookshopApplication { } public static void main(string[] args) { } SpringApplication.run( BookshopApplication.class, args); Umożliwia prosty start aplikacji: $ java -jar app.jar Uruchamia wbudowany serwer Tomcat i wdraża aplikację
20 @RestController 20 Kontrolery API oznaczone Można wskazać prefiks URI dla wszystkich akcji danego kontrolera na metodach kontrolera do definiowania routingu, = "/books", method = GET) Specjalizowane adnotacje dla poszczególnych żądań
21 @RestController public class ShopController public List<Order> listorders() { public ResponseEntity<Order> UUID id) { } public ResponseEntity<Void> Order order) { }
22 Wiązanie parametrów 22 Automatyczne wiązanie parametrów metody kontrolera z: Parametrami URI Parametrami Ciałem n Domyślnie mapowanie z formatu JSON Ciało odpowiedzi budowane na podstawie wartości zwracanej przez metodę Domyślnie mapowanie obiektów do formatu JSON
23 Wiązanie parametrów public List<Author> Integer = "sort", required = false) String sort) { } List<Author> authors = /* wczytanie z db */; return authors; Konwersja na tablicę w formacie JSON Dla żądania: GET /books/17/authors?sort=asc id = 17 sort = asc
24 ResponseEntity<T> 24 Umożliwia sterowanie wszystkimi aspektami odpowiedzi HTTP (kod, ciało, nagłówki), public ResponseEntity<Order> UUID id) { Order order = ordersservice.find(id); } return isnull(order)? ResponseEntity.notFound().build() : ResponseEntity.ok(order);
25 @Service 25 Logika biznesowa aplikacji powinna znajdować się poza kontrolerem i powinna być niezależna od protokołu HTTP Za przedstawienie wyników logiki biznesowej w kategoriach protokołu HTTP odpowiada kontroler n np. nie znaleziono produktu o podanym id n W warstwie biznesowej: null n W kontrolerze: odpowiedź 404 Serwisy umożliwiają modelowanie logiki biznesowej
26 Wstrzykiwanie zależności 26 Komponent nie pozyskuje samodzielnie swoich zależności zamiast tego zależności są dostarczane z zewnątrz Przez parametry konstruktora Przez settery Bezpośrednio do pól obiektu Spring oferuje mechanizm wstrzykiwania zależności do serwisów i kontrolerów Oraz innych komponentów (@Component)
27 Serwis z zależnościami public class OrdersService{ final EntityManager em; final InvoiceService invoiceservice; zależności serwisu public OrdersService(EntityManager em, InvoiceService invoiceservice){ this.em = em; this.invoiceservice = invoiceservice; } } //...logika biznesowa obsługi zamówień...
28 Kontroler z zależnościami public class ShopController { OrdersService ordersservice; zależność kontrolera public ShopController(OrdersService ordersservice) { this.ordersservice = ordersservice; } } /*...akcje kontrolera...*/
29 Dostarczanie zależności 29 Za budowanie zależności i ich dostarczanie odpowiada framework Spring Spring skanuje wszystkie klasy w projekcie w itd. Odnalezione komponenty mogą być wstrzykiwane jako zależności do innych komponentów Gdy potrzebna jest nowa instancja zależności Spring buduje ją wstrzykując najpierw jej własne zależności Jeśli występuje kilka konstruktorów, wskazuje, którego z nich ma użyć Spring
30 JPA w Springu 30 Klasy encyjne model biznesowy Model biznesowy to nie to samo, co Model w MVC Model w MVC kontrakt z klientem: Jakie dane przedstawić klientowi Jakie dane klient może wysyłać do aplikacji Model biznesowy: na jakich danych aplikacja operuje wewnętrznie (realizuje logikę biznesową)
31 Model biznesowy i Model w MVC 31 Mogą posiadać część wspólną, np.: Model w MVC Model biznesowy Model w MVC Model biznesowy
32 JPA w Springu 32 Konfiguracja w pliku application.properties: #Connection string spring.datasource.url=jdbc:derby://localhost:1527/db #Sterownik dla bazy danych i dialekt języka SQL spring.datasource.driver-class-name=org.apache.derby.jdbc.clientdriver40 spring.jpa.database-platform=org.hibernate.dialect.derbytensevendialect #Nazwa użytkownika bazodanowego i hasło spring.datasource.username=db_user spring.datasource.password=db_pass #Generowanie tabel w bazie danych na podstawie modelu encji spring.jpa.hibernate.ddl-auto=update Instancje klasy EntityManager wstrzykiwane jako zależności komponentów
33 Automatyczne zarządzanie transakcjami 33 Metody oznaczone wykonywane w ramach transakcji Użycia transakcji wymagają wszystkie operacje modyfikujące stan w bazie danych, public void save(book book) { if (/*nowa książka*/) { em.persist(book); } else { em.merge(book); } }
34 Automatyczne zarządzanie transakcjami 34 Wycofanie transakcji (ang. rollback) następuje w reakcji na wyjątki RuntimeException, np.: Wyjątek biznesowy: public class OutOfStockException extends RuntimeException { } Metoda w klasie biznesowej public void placeorder(order order) { for (Book bookstub : order.getbooks()) { Book book = em.find(book.class, bookstub.getid()); if (book.getamount() < 1) throw new OutOfStockException(); } else { int newamount = book.getamount() - 1; book.setamount(newamount); } } em.persist(order); wymusza rollback
35 35 Pytania?
Spring Web MVC, Spring DI
Państwowa Wyższa Szkoła Zawodowa w Tarnowie Zakład Informatyki Laboratorium 5 Spring Web MVC, Spring DI Prowadzący: Kierunek: Semestr: Rok: Informatyka Zimowy 2 Technologie Technologie / narzędzia będące
Bardziej szczegółowoJAVA EE MODEL APLIKACJI. Waldemar Korłub. Narzędzia i aplikacje Java EE KASK ETI Politechnika Gdańska
JAVA EE MODEL APLIKACJI Waldemar Korłub Narzędzia i aplikacje Java EE KASK ETI Politechnika Gdańska Architektura aplikacji 2 Java EE od początku była projektowana z myślą o aplikacjach klasy enterprise
Bardziej szczegółowoPlatformy Technologiczne
i Platformy Technologiczne Laboratorium nr 4 Java: REST API Aplikacja opracowana w ramach laboratorium nr 4 będzie potrzebna do realizacji laboratorium nr 5 należy zachować przygotowany projekt. Zadanie
Bardziej szczegółowoAplikacja webowa w Javie szybkie programowanie biznesowych aplikacji Spring Boot + Vaadin
Aplikacja webowa w Javie szybkie programowanie biznesowych aplikacji Spring Boot + Vaadin Czym jest Spring Boot? Spring Boot jest szkieletem aplikacji, opiera się o Spring Framework czyli Framework szeroko
Bardziej szczegółowoWprowadzenie. Narzędzia i środowiska programistyczne. Laboratorium 1. Prowadzący: Kierunek: Semestr: Rok: Tomasz Gądek Informatyka Zimowy 2
Państwowa Wyższa Szkoła Zawodowa w Tarnowie Zakład Informatyki Narzędzia i środowiska programistyczne Laboratorium 1 Wprowadzenie Prowadzący: Kierunek: Semestr: Rok: Informatyka Zimowy 2 O Sobie Od 2014
Bardziej szczegółowoFull Stack JavaScript z Angular i Nest. Dni: 5. Opis: Adresaci szkolenia
Kod szkolenia: Tytuł szkolenia: DED/FSJS Full Stack JavaScript z Angular i Nest Dni: 5 Opis: Adresaci szkolenia Kurs przeznaczony jest dla programistów posiadających podstawową wiedzę w zakresie JavaScript,
Bardziej szczegółowoKurs ASP.NET ASP.NET CORE APLIKACJE WEBOWE
Kurs ASP.NET ASP.NET CORE APLIKACJE WEBOWE Cena szkolenia Cena szkolenia wynosi 100 zł za 60 min. Ilość godzin szkolenia jest zależna od postępów w nauce uczestnika kursu oraz ilości czasu, którą będzie
Bardziej szczegółowoArchitektury Usług Internetowych. Laboratorium 2 RESTful Web Services
Architektury Usług Internetowych Laboratorium 2 RESTful Web Services Wstęp Celem laboratorium jest zapoznanie się z modelem usług sieciowych opartych na standardzie REST. RESTful Web Services Usługami
Bardziej szczegółowoSpring, Maven, Postman, Debugger
Państwowa Wyższa Szkoła Zawodowa w Tarnowie Zakład Informatyki Laboratorium 4 Spring, Maven, Postman, Debugger Prowadzący: Kierunek: Semestr: Rok: Informatyka Zimowy 2 Technologie Technologie / narzędzia
Bardziej szczegółowoJAX-RS czyli REST w Javie. Adam Kędziora
JAX-RS czyli REST w Javie Adam Kędziora Webservice Usługa sieciowa (ang. web service) komponent programowy niezależny od platformy i implementacji, dostarczający określonej funkcjonalności. SOAP,UDDI,XML,WSDL
Bardziej szczegółowoTechnologie dla aplikacji klasy enterprise. Wprowadzenie. Marek Wojciechowski
Technologie dla aplikacji klasy enterprise Wprowadzenie Marek Wojciechowski Co oznacza enterprise-ready? Bezpieczeństwo Skalowalność Stabilność Kompatybilność wstecz Wsparcie Dokumentacja Łatwość integracji
Bardziej szczegółowoJUnit TESTY JEDNOSTKOWE. Waldemar Korłub. Platformy Technologiczne KASK ETI Politechnika Gdańska
JUnit TESTY JEDNOSTKOWE Waldemar Korłub Platformy Technologiczne KASK ETI Politechnika Gdańska Testy aplikacji 2 Ręczne testowanie Czasochłonne Powtarzalność trudna do uzyskania Nudne Testowanie automatyczne
Bardziej szczegółowoPoznaj ASP.NET MVC. Kamil Cieślak Microsoft Student Partner 2013-03-11
Poznaj ASP.NET MVC Kamil Cieślak Microsoft Student Partner 2013-03-11 Agenda Czym jest ASP.NET MVC? Wzorzec MVC ASP.NET MVC vs inne frameworki Bazy danych w ASP.NET MVC Jak zacząć? 2 Czym jest ASP.NET
Bardziej szczegółowoTemat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych
PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W ELBLĄGU INSTYTUT INFORMATYKI STOSOWANEJ Sprawozdanie z Seminarium Dyplomowego Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych
Bardziej szczegółowoWstęp Budowa Serwlety JSP Podsumowanie. Tomcat. Kotwasiński. 1 grudnia 2008
Adam 1 grudnia 2008 Wstęp Opis Historia Apache kontener serwletów rozwijany w ramach projektu Apache jeden z bardziej popularnych kontenerów Web open source, Apache Software License rozwijany przez ASF
Bardziej szczegółowoBEAN VALIDATION. Waldemar Korłub. Narzędzia i aplikacje Java EE KASK ETI Politechnika Gdańska
BEAN VALIDATION Waldemar Korłub Narzędzia i aplikacje Java EE KASK ETI Politechnika Gdańska Bean Validation Uniwersalny mechanizm walidacji danych we wszystkich warstwach aplikacji Warstwa interfejsu,
Bardziej szczegółowoJAVA EE 8. Waldemar Korłub. Narzędzia i aplikacje Java EE KASK ETI Politechnika Gdańska
JAVA EE 8 Waldemar Korłub Narzędzia i aplikacje Java EE KASK ETI Politechnika Gdańska Java EE 8 Java EE 5 rok 2006 Java EE 6 rok 2009 Java EE 7 rok 2013 Java EE 8 rok 2017 Servlet 4.0 HTTP/2 Server push
Bardziej szczegółowo1 Wprowadzenie do J2EE
Wprowadzenie do J2EE 1 Plan prezentacji 2 Wprowadzenie do Java 2 Enterprise Edition Aplikacje J2EE Serwer aplikacji J2EE Główne cele V Szkoły PLOUG - nowe podejścia do konstrukcji aplikacji J2EE Java 2
Bardziej szczegółowoWybrane działy Informatyki Stosowanej
Wybrane działy Informatyki Stosowanej Java Enterprise Edition WebServices Serwer aplikacji GlassFish Dr hab. inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki Aplikacje
Bardziej szczegółowoProgramowanie w Javie cz. 1 Wstęp. Łódź, 24 luty 2014 r.
Programowanie w Javie cz. 1 Wstęp Łódź, 24 luty 2014 r. Prawdy i mity o Javie Java jest techniką webową? (tak, platforma Java EE, aplety) Java jest bezpieczna? (tak, aplety, brak operowania na pamięci)
Bardziej szczegółowoMateriały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione
Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf Materiały poprawione Rozwiązanie zadania w NetBeans IDE 7.4: Jarosław Ksybek, Adam Miazio Celem ćwiczenia jest przygotowanie prostej aplikacji
Bardziej szczegółowoKURS SPRING APLIKACJE WEBOWE
KURS SPRING APLIKACJE WEBOWE Cena szkolenia Cena szkolenia wynosi 100 zł za 60 min. Ilość godzin szkolenia jest zależna od postępów w nauce uczestnika kursu oraz ilości czasu, którą będzie potrzebował
Bardziej szczegółowoASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3
3 ASP.NET MVC Podstawy 1 1. Cel zajęć Celem zajęć jest zapoznanie się z podstawami ASP.NET MVC 2.0 Framework. 2. Zadanie Proszę zbudować prostą aplikację WWW przy zastosowaniu framework a ASP.NET MVC 2.0
Bardziej szczegółowoRuby i Ruby on Rails. Mateusz Drożdżyński
Ruby i Ruby on Rails Mateusz Drożdżyński Co to Ruby? Dynamiczny, obiektowy język programowania, stworzony przez Yukihiro Matsumoto Pojawił się w tym samym roku co Java (1995) Przejrzysta, prosta i intuicyjna
Bardziej szczegółowoProjektowanie oprogramowania. Warstwa integracji z bazą danych oparta na technologii ORM Platforma Java EE Autor: Zofia Kruczkiewicz
Projektowanie oprogramowania Warstwa integracji z bazą danych oparta na technologii ORM Platforma Java EE Autor: Zofia Kruczkiewicz 1 Wykonanie czterowarstwowej aplikacji EE z dostępem do bazy danych,
Bardziej szczegółowoProgramowanie komponentowe 5
Budowa warstwy klienta w architekturze typu klient-serwer zbudowanych z komponentów typu EE - klient desktopowy i internetowy. Zastosowanie komponentów opartych na technologii EJB 3.2. na podstawie https://docs.oracle.com/javaee/7/jeett.pdf
Bardziej szczegółowoPlatformy Technologiczne
i Platformy Technologiczne Laboratorium nr 5 Java: testy jednostkowe z biblioteką JUnit Projekt opracowany w ramach laboratorium nr 5 będzie wykorzystywany w czasie laboratorium nr 6 należy zachować przygotowaną
Bardziej szczegółowoProgram szkolenia: REST i Microservices w PHP
Program szkolenia: REST i Microservices w PHP Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: REST i Microservices w PHP PHP-rest PHP developerzy 4 dni 50% wykłady / 50% warsztaty
Bardziej szczegółowoPodstawy wzorca MVC 2011-10-18 MODEL KON- TROLER WIDOK. Odpowiada za wyświetlenie danych użytkownikowi. Zawiera dane aplikacji oraz jej logikę.
Podstawy wzorca MVC MODEL KON- TROLER WIDOK Zawiera dane aplikacji oraz jej logikę. MODEL WIDOK Odpowiada za wyświetlenie danych użytkownikowi KON- TROLER KON- TROLER MODEL WIDOK Jedyna część aplikacji,
Bardziej szczegółowoSzkolenie wycofane z oferty
Szkolenie wycofane z oferty Program szkolenia: Java Server Faces 2 Informacje: Nazwa: Java Server Faces 2 Kod: Java-EE-JSF 2 Kategoria: Java EE Grupa docelowa: developerzy Czas trwania: 3 dni Forma: 50%
Bardziej szczegółowoWeb frameworks do budowy aplikacji zgodnych z J2EE. Jacek Panachida
Web frameworks do budowy aplikacji zgodnych z J2EE Jacek Panachida Cel pracy Analiza wybranych ram projektowych dostępnych dla platformy Java Warunki selekcji napisany z wykorzystaniem języka Java oraz
Bardziej szczegółowoEnterprise JavaBeans
Enterprise JavaBeans 1. Wprowadzenie. 2. Przegląd komponentów EJB. komponenty encyjne, komponenty sesyjne, komponenty sterowane komunikatami. 3. Kontener komponentów EJB: JBoss. 1 Enterprise JavaBeans
Bardziej szczegółowoProgramowanie Komponentowe WebAPI
Programowanie Komponentowe WebAPI dr inż. Ireneusz Szcześniak jesień 2016 roku WebAPI - interfejs webowy WebAPI to interfejs aplikacji (usługi, komponentu, serwisu) dostępnej najczęściej przez Internet,
Bardziej szczegółowoDOJRZAŁOŚĆ USŁUG INTERNETOWYCH MODEL DOJRZAŁOŚCI USŁUG WG RICHARDSONA USŁUGI STEROWANE RELACJAMI HIPERTEKSTOWYMI. Waldemar Korłub
DOJRZAŁOŚĆ USŁUG INTERNETOWYCH Waldemar Korłub MODEL DOJRZAŁOŚCI USŁUG WG RICHARDSONA USŁUGI STEROWANE RELACJAMI HIPERTEKSTOWYMI Architektury Usług Internetowych KASK ETI Politechnika Gdańska 2 SOA: Service
Bardziej szczegółowoĆwiczenie dotyczące platformy Java EE zostało przygotowane z myślą o środowisku NetBeans w wersji 7.3 (do pobrania z
RESTful Web Services Ćwiczenie dotyczące platformy Java EE zostało przygotowane z myślą o środowisku NetBeans w wersji 7.3 (do pobrania z http://www.netbeans.org/). Celem ćwiczenia jest przygotowanie usługi
Bardziej szczegółowoZagadnienia Programowania Obiektowego Agata Hejmej
Zagadnienia Programowania Obiektowego 3.11.2008 Agata Hejmej Plan prezentacji co to jest Struts2? krótki przegląd typów podejść przy tworzeniu aplikacji webowych architektura MVC i MVC2 architektura Struts2
Bardziej szczegółowoNarzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl
Narzędzia i aplikacje Java EE Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl Niniejsze opracowanie wprowadza w technologię usług sieciowych i implementację usługi na platformie Java EE (JAX-WS) z
Bardziej szczegółowoEJB 3.0 (Enterprise JavaBeans 3.0)
EJB 3.0 (Enterprise JavaBeans 3.0) Adrian Dudek Wirtualne Przedsiębiorstwo 2 Wrocław, 1 czerwca 2010 Plan prezentacji 1 Wprowadzenie Cel prezentacji Czym jest EJB 3.0? Historia 2 3 Cel prezentacji Wprowadzenie
Bardziej szczegółowoSpecyfikacja implementacyjna aplikacji serwerowej
Projekt: System wspomagania osób studiujących Strona: 1 / 7 Opracowali: Zatwierdzili: Spis treści Damian Głuchowski Krzysztof Krajewski Krzysztof Krajewski dr inż. Sławomir Skoneczny Spis treści... 1 1.
Bardziej szczegółowoProgramowanie obiektowe zastosowanie języka Java SE
Programowanie obiektowe zastosowanie języka Java SE Wstęp do programowania obiektowego w Javie Autor: dr inŝ. 1 Java? Java język programowania obiektowo zorientowany wysokiego poziomu platforma Javy z
Bardziej szczegółowoEPI: Interfejs Graficzny Wykład nr 4 Podstawy frameworku Rails
EPI: Interfejs Graficzny Wykład nr 4 Podstawy frameworku Rails Plan prezentacji Framework Rails Ruby on Rails podstawowe założenia DRY: nie powtarzaj się Ruby on Rails podstawowe założenia DRY: nie powtarzaj
Bardziej szczegółowoWprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/
Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/ Aplikacja internetowa tworzona na podstawie bazy danych. Programowanie komponentowe 2, Zofia
Bardziej szczegółowoakademia androida Składowanie danych część VI
akademia androida Składowanie danych część VI agenda 1. SharedPreferences. 2. Pamięć wewnętrzna i karta SD. 3. Pliki w katalogach /res/raw i /res/xml. 4. Baza danych SQLite. 5. Zadanie. 1. SharedPreferences.
Bardziej szczegółowoPodręcznik Integracji
Podręcznik Integracji Spis treści 1. Integracja oferty... 3 1.1. Samodzielne wprowadzanie oferty sklepu... 3 1.2. Automatyczne wprowadzanie oferty z pliku XML... 3 1.3. Cyklicznie pobieranie oferty ze
Bardziej szczegółowoJak okiełznać frontend w Django? Piotr Maliński www.python.rk.edu.pl
Jak okiełznać frontend w Django? Piotr Maliński www.python.rk.edu.pl Problemy frontendu Trudne testowanie i debugowanie Różne przeglądarki Różne ustawienia przeglądarek Urządzenia dotykowe Przekazywanie
Bardziej szczegółowoArchitektury Usług Internetowych. Laboratorium 2. Usługi sieciowe
Architektury Usług Internetowych Laboratorium 2. Usługi sieciowe Wstęp Celem laboratorium jest zapoznanie się z modelem usług sieciowych na przykładzie prostego serwera Apache Axis2. Apache Axis2 Apache
Bardziej szczegółowoWprowadzenie db4o - podstawy db4o - technikalia Przydatne wiadomości. Wprowadzenie. db4o. Norbert Potocki. 1 czerwca 2009. Norbert Potocki db4o
Wprowadzenie - podstawy - technikalia Przydatne wiadomości Wprowadzenie 1 czerwca 2009 Wprowadzenie - podstawy - technikalia Przydatne wiadomości Wprowadzenie = bjects = database for objects w pełni obiektowa
Bardziej szczegółowoZałożenia projektowe dla zapytania ofertowego EAK_ZA_01/2015
Warszawa, 23.01.2015r. NIP: 521-32-79-750 Założenia projektowe dla zapytania ofertowego EAK_ZA_01/2015 I. Wstęp W związku z realizacją projektu Wdrożenie i świadczenie usługi w modelu SaaS eakceptacje,
Bardziej szczegółowo1. Czynności przygotowujące aplikację działającą na platformie Java SE Biblioteka5 (należy ją pobrać z załącznika z p.1)
Instrukcja tworzenia aplikacji EE na podstawie aplikacji z dostępem do bazy danych, prezentowanej na zajęciach lab.5 z PIO umożliwiająca przez sieć dostęp wielu użytkownikom. Projektowanie i wdrażanie
Bardziej szczegółowoDokumentacja techniczna. Młodzieżowe Pośrednictwo Pracy
Dokumentacja techniczna Młodzieżowe Pośrednictwo Pracy Spis Treści 1. Widok ogólny architektury MPP... 3 2. Warstwy systemu... 5 3. Struktura systemu/komponentów... 7 3.1 Aplikacje... 7 3.2 Biblioteki...
Bardziej szczegółowoMicrosoft.NET: ASP.NET MVC + Entity Framework (Code First)
Microsoft.NET: ASP.NET MVC + Entity Framework (Code First) Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2012. W ramach projektu budowana jest prosta
Bardziej szczegółowoOprogramowanie i wykorzystanie stacji roboczych. Wykład 4
Wykład 4 p. 1/1 Oprogramowanie i wykorzystanie stacji roboczych Wykład 4 Dr inż. Tomasz Olas olas@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Obsługa sieci Wykład
Bardziej szczegółowoJAVA W SUPER EXPRESOWEJ PIGUŁCE
JAVA W SUPER EXPRESOWEJ PIGUŁCE Obiekt Obiekty programowe to zbiór własności i zachowań (zmiennych i metod). Podobnie jak w świecie rzeczywistym obiekty posiadają swój stan i zachowanie. Komunikat Wszystkie
Bardziej szczegółowoForum Client - Spring in Swing
Forum Client - Spring in Swing Paweł Charkowski. 0. Cel projektu Celem projektu jest próba integracji Spring Framework z różnymi technologiami realizacji interfejsu użytkownika, oraz jej ocena. Niniejszy
Bardziej szczegółowoWykład 12. Programowanie serwera MS SQL 2005 w C#
Wykład 12 Programowanie serwera MS SQL 2005 w C# Budowa procedur składowanych w C# Budowa funkcji składowanych w C# Wykorzystanie funkcji składowanych w C# po stronie klienta Tworzenie typów definiowanych
Bardziej szczegółowoBudowa aplikacji ASP.NET z wykorzystaniem wzorca MVC
Akademia MetaPack Uniwersytet Zielonogórski Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Krzysztof Blacha Microsoft Certified Professional Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Agenda:
Bardziej szczegółowoAplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html
Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Dr inż. Zofia Kruczkiewicz wykład 4 Programowanie aplikacji internetowych, wykład 4 1 1. Zadania aplikacji rozproszonych obiektów
Bardziej szczegółowoInformatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java
Informatyka I Standard JDBC Programowanie aplikacji bazodanowych w języku Java dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2017 Standard JDBC Java DataBase Connectivity uniwersalny
Bardziej szczegółowoWieloplatformowe aplikacje sieciowe. dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak
Wieloplatformowe aplikacje sieciowe dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak SOAP Serwer: Axis2 / Java Wbudowany komponent nasłuchujący, (Apache / Tomcat) Client Axis2 klient / XML Jeżyk programowania:
Bardziej szczegółowoTworzenie i wykorzystanie usług
Strona 1 Co to jest usługa w systemie Android? Usługi HTTP Obsługa wywołania HTTP GET Obsługa wywołania HTTP POST Obsługa wieloczęściowego wywołania HTTP POST Usługi lokalne Usługi zdalne Tworzenie usługi
Bardziej szczegółowoAplikacje webowe z wykorzystaniem Node.js oraz Express
Aplikacje webowe z wykorzystaniem Node.js oraz Express Adresaci szkolenia: Kurs przeznaczony jest dla programistów pragnących tworzyć skalowalne aplikacje z wykorzystaniem Node.js. Parametry szkolenia:
Bardziej szczegółowoEnterprise Java Beans Narzędzia i Aplikacje Java EE
Enterprise Java Beans Narzędzia i Aplikacje Java EE Michał Piotrowski Michał Wójcik Waldemar Korłub Katedra Architektury Systemów Komputerowych Wydział Elektroniki, Telekomunikacji i Informatyki Politechnika
Bardziej szczegółowoKatedra Architektury Systemów Komputerowych Wydział Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej
Katedra Architektury Systemów Komputerowych Wydział Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej dr inż. Paweł Czarnul pczarnul@eti.pg.gda.pl Architektury usług internetowych laboratorium
Bardziej szczegółowoProgramowanie zespołowe
Państwowa Wyższa Szkoła Zawodowa w Tarnowie Zakład Informatyki Laboratorium 6 Programowanie zespołowe Prowadzący: Kierunek: Semestr: Rok: Informatyka Zimowy 2 Programowanie zespołowe Wymagania wstępne
Bardziej szczegółowoPodstawowe wykorzystanie Hibernate
Podstawowe wykorzystanie Hibernate Cel Wykonanie prostej aplikacji webowej przedstawiającą wykorzystanie biblioteki. Aplikacja sprawdza w zależności od wybranej metody dodaje, nową pozycje do bazy, zmienia
Bardziej szczegółowoSerwery aplikacji. mgr Radosław Matusik. Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego www.math.uni.lodz.pl/ radmat radmat@math.uni.lodz.
Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego www.math.uni.lodz.pl/ radmat radmat@math.uni.lodz.pl Serwer aplikacji Serwer aplikacji to: Serwer wchodzący w skład sieci komputerowej, przeznaczony
Bardziej szczegółowoJęzyk JAVA podstawy. wykład 2, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna
Język JAVA podstawy wykład 2, część 1 1 Język JAVA podstawy Plan wykładu: 1. Rodzaje programów w Javie 2. Tworzenie aplikacji 3. Tworzenie apletów 4. Obsługa archiwów 5. Wyjątki 6. Klasa w klasie! 2 Język
Bardziej szczegółowoJava. język programowania obiektowego. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak
Java język programowania obiektowego Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak 1 Język Java Język Java powstał w roku 1995 w firmie SUN Microsystems Java jest językiem: wysokiego
Bardziej szczegółowoProgramowanie w języku Java. Wykład 13: Java Platform, Enterprise Edition (Java EE)
Programowanie w języku Java Wykład 13: Java Platform, Enterprise Edition (Java EE) Standard J2EE Programowanie w języku Java 2 J2EE - komunikacja Programowanie w języku Java 3 J2EE warstwa biznesowa Programowanie
Bardziej szczegółowoPROJEKTOWANIE INTERFEJSÓW
PROJEKTOWANIE INTERFEJSÓW APLIKACJI INTERNETOWYCH Waldemar Korłub Aplikacje i Usługi Internetowe KASK ETI Politechnika Gdańska 2 Krótka historia interfejsów internetowych Tabele (1995) 3 Jedyny
Bardziej szczegółowoAndroid, wprowadzenie do SDK
Android, wprowadzenie do SDK Wprowadzenie, konfguracja środowiska, narzędzia, pierwsze aplikacje. prowadzący: Piotr Szymański, student 3 roku informatyki Paweł Rejkowicz, student 1 roku Informatyki 1 Android
Bardziej szczegółowoTomasz Dobek. t.dobek@students.mimuw.edu.pl
Spring Framework Tomasz Dobek t.dobek@students.mimuw.edu.pl Plan prezentacji Spring z lotu ptaka Kontener Spring IoC Spring AOP Menedżer transakcji w Springu Spring DAO Testy integracyjne Podsumowanie
Bardziej szczegółowoProjektowanie aplikacji w modelu MVC opartej o framework CodeIgniter
Projektowanie aplikacji w modelu MVC opartej o framework CodeIgniter Konfiguracja i przygotowanie przykładowej aplikacji opartej o model Model-View- Controller Konfiguracja frameworka Zainstaluj na serwerze
Bardziej szczegółowoProgramowanie w języku Java - Wyjątki, obsługa wyjątków, generowanie wyjątków
Programowanie w języku Java - Wyjątki, obsługa wyjątków, generowanie wyjątków mgr inż. Maciej Lasota Version 1.0, 13-05-2017 Spis treści Wyjątki....................................................................................
Bardziej szczegółowoWprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/
Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/ Aplikacja internetowa tworzona na podstawie bazy danych. Programowanie komponentowe 2, Zofia
Bardziej szczegółowoProgram szkolenia: Symfony, nowoczesny framework PHP
Program szkolenia: Symfony, nowoczesny framework PHP Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Symfony, nowoczesny framework PHP PHP-frameworki PHP developerzy 3 dni 40% wykłady
Bardziej szczegółowoInformatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018
Informatyka I Klasy i obiekty. Podstawy programowania obiektowego dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Plan wykładu Pojęcie klasy Deklaracja klasy Pola i metody klasy
Bardziej szczegółowoPLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 1. Wprowadzenie do aplikacji internetowych
Bardziej szczegółowoRuby on Rails. Supersilnik WWW. Łukasz Włodarczyk
Ruby on Rails Supersilnik WWW Łukasz Włodarczyk Spis Treści Co to jest Ruby? Dlaczego Ruby? Co to jest Rails? Historia Ruby on Rails Filozofia Ruby on Rails Jak działa technologia Rails? Ruby on Rails
Bardziej szczegółowoProgramowanie komponentowe. Przykład 1 Bezpieczeństwo wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz
Programowanie komponentowe Przykład 1 Bezpieczeństwo wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz Struktura wykładu 1. Utworzenie użytkowników i ról na serwerze aplikacji Sun Java System Application
Bardziej szczegółowoTworzenie komponentów logiki biznesowej i warstwy dostępu do danych w oparciu o EJB3.0/JPA lub EJB 3.1/JPA2
Kod szkolenia: Tytuł szkolenia: EJB Tworzenie komponentów logiki biznesowej i warstwy dostępu do danych w oparciu o EJB3.0/JPA lub EJB 3.1/JPA2 Dni: 3 Opis: Adresaci szkolenia: Szkolenie adresowane jest
Bardziej szczegółowoGoogle Web Toolkit Michał Węgorek ZPO 2009
Google Web Toolkit Michał Węgorek ZPO 2009 Plan prezentacji Czym jest GWT? Co daje GWT motywacja Po co tłumaczyć Javę do JavaScriptu? - AJAX niebezpieczeństwa - Przewaga GWT nad AJAX - RPC - Utrzymywanie
Bardziej szczegółowoEwolucja projektowania aplikacji w PHP na bazie frameworka Symfony 2
Ewolucja projektowania aplikacji w PHP na bazie frameworka Symfony 2 Statyczne strony HTML Wczytanie statycznej strony HTML sprowadza się do odebrania żądania przez serwer, odnalezienia właściwego pliku
Bardziej szczegółowoProjekt INP Instrukcja 2. Autor Dr inż. Zofia Kruczkiewicz
Projekt INP002017 Instrukcja 2 Autor Dr inż. Zofia Kruczkiewicz I. Czynności wykonane zgodnie z harmonogramem grupy w tygodniach 1-15 Tabela 2. Przebieg realizacji każdego z projektów (tabela 1) Opis realizacji
Bardziej szczegółowoWprowadzenie do technologii Web Services: SOAP, WSDL i UDDI
Wprowadzenie do technologii Web Services: SOAP, WSDL i UDDI Maciej Zakrzewicz PLOUG mzakrz@cs.put.poznan.pl Plan prezentacji Wprowadzenie do architektury zorientowanej na usługi Charakterystyka technologii
Bardziej szczegółowoBudowa prostej aplikacji wielowarstwowej. Laboratorium 1 Programowanie komponentowe Zofia Kruczkiewicz
Budowa prostej aplikacji wielowarstwowej Laboratorium 1 Programowanie komponentowe Zofia Kruczkiewicz Konfigurowanie edytora programu za pomocą Tools/Options/Editor Konfigurowanie edytora programu za pomocą
Bardziej szczegółowoMeetingHelper. Aplikacja Android ułatwiająca przekazywanie materiałów pomiędzy uczestnikami spotkania. Instrukcja obsługi dla programisty
MeetingHelper Aplikacja Android ułatwiająca przekazywanie materiałów pomiędzy uczestnikami spotkania Instrukcja obsługi dla programisty W tej części został zawarty opis uruchamiania projektu programistycznego,
Bardziej szczegółowoProgramowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz
Programowanie obiektowe Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Java P. L. Lemay, Naughton R. Cadenhead Java Podręcznik 2 dla kaŝdego Języka Programowania Java Linki Krzysztof Boone oprogramowania
Bardziej szczegółowoTworzenie i wykorzystanie usług sieciowych
Ćwiczenie 14 Temat: Tworzenie i wykorzystanie usług sieciowych Cel ćwiczenia: W trakcie ćwiczenia student zapozna się z procedurą tworzenia usługi sieciowej w technologii ASP.NET oraz nauczy się tworzyć
Bardziej szczegółowoWeb frameworks do budowy aplikacji zgodnych z J2EE
Web frameworks do budowy aplikacji zgodnych z J2EE Jacek Panachida promotor: dr Dariusz Król Przypomnienie Celem pracy jest porównanie wybranych szkieletów programistycznych o otwartym kodzie źródłowym
Bardziej szczegółowoWybrane działy Informatyki Stosowanej
Wybrane działy Informatyki Stosowanej Java Enterprise Edition. WebServices. Język XML. Serwer aplikacji GlassFish. Dr inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki
Bardziej szczegółowoAngular, cz. II. Tworzenie serwisów Web 2.0. dr inż. Robert Perliński rperlinski@icis.pcz.pl
ngular, cz. II 1/24 Angular, cz. II Tworzenie serwisów Web 2.0 dr inż. Robert Perliński rperlinski@icis.pcz.pl Politechnika Częstochowska Instytut Informatyki Teoretycznej i Stosowanej 10 kwietnia 2015
Bardziej szczegółowoSpring Framework - wprowadzenie i zagadnienia zaawansowane
Program szkolenia: Spring Framework - wprowadzenie i zagadnienia zaawansowane Informacje ogólne Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Spring Framework - wprowadzenie i zagadnienia
Bardziej szczegółowoPROJEKTOWANIE APLIKACJI INTERNETOWYCH
PROJEKTOWANIE APLIKACJI INTERNETOWYCH (WFAIS.IF-N016) dr inż. Marcin Zieliński Wykład dla kierunku: Informatyka Stosowana I rok, II stopień Rok akademicki: 2016/2017 - semestr letni WYKŁAD 2 Przypomnienie
Bardziej szczegółowoKurs programowania. Wykład 9. Wojciech Macyna. 28 kwiecień 2016
Wykład 9 28 kwiecień 2016 Java Collections Framework (w C++ Standard Template Library) Kolekcja (kontener) Obiekt grupujacy/przechowuj acy jakieś elementy (obiekty lub wartości). Przykładami kolekcji sa
Bardziej szczegółowoArchitektura aplikacji
Architektura aplikacji System powiadomień Kamil Szarek, 21 listopada 2013 Plan prezentacji 1. 2. 3. 4. 5. Internet i aplikacje mobilne Jak działa typowe API, architektura pull Architektura push, PubSubHubbub
Bardziej szczegółowoOpenLaszlo. OpenLaszlo
OpenLaszlo Spis Treści 1 OpenLaszlo Co to jest? Historia Idea Architektura Jako Flash lub DHTML Jako servlet lub SOLO Jak to działa? Język LZX Struktura programu Skrypty Obiekty i klasy Atrybuty i metody
Bardziej szczegółowoAplikacje Internetowe, Servlety, JSP i JDBC
Aplikacje Internetowe, Servlety, JSP i JDBC Opis Java 2 Enterprise Edition (JEE) jest potężną platformą do tworzenia aplikacji webowych. PLatforma JEE oferuje wszystkie zalety tworzenia w Javie plus wszechstronny
Bardziej szczegółowo