Budowa usług internetowych
część I: REST
O mnie- Łukasz (procek) Leśniewski - CTO&Founder w Ka-Boom - programista Java, Node, Mediator
Usługi są wszędzie
hi
Klient - Serwer
K
K
K
R
hi
Klient - Serwer
K
K
K
zapytanie
R
hi
Klient - Serwer
K
K
K
R
hi
Klient - Serwer
K
K
K
R
hi
Klient - Serwer
K
K
K
odpowiedź
R
hi
Klient - Serwer
K
K
K
R
https://www.ietf.org/rfc/rfc2616.txt
(tylko dla ambitnych)
CRUD czasownik HTTP
create POST
read GET
update PUT
delete DELETE
Czasowniki a CRUD
https://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods
Kody odpowiedzikod znaczenie
2xx ok
3xx zmiana lokalizacji
4xx wina użytkownika
5xx wina serwera
REST(ful) -dobre praktyki HTTP
pobierz wszystkie konta
GET /accounts
dodaj nowe konto
POST /accounts
pobierz konto o id = 69
GET /accounts/69
pobierz zamówienia konta, którego id = 69
GET /accounts/69/orders
dodaj nowe zamówienia konta, którego id = 69
POST /accounts/69/orders
usuń 2. zamówienie konta, którego id = 69
DELETE /accounts/69/orders/2
zaktualizować konto o id = 69
PUT /accounts/69
Nasze środowisko pracy (nie pracujemy z main!)
Środowisko serwera
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
R
R
R
baza danychR
Serwery
Glassfish
- brak wsparcia komercyjnego
- projekt *porzucony* przez Oracle
- open source - darmowy
http://www.zdnet.com/article/oracle-abandons-commercial-support-for-glassfish-jee-server/
- uznanie Fortune 500 - ciągle wspierany
przez RedHat - wspracie komercyjne - dedykowane IDE
(nakładka na Eclipse)
http://jboss.org
- darmowa wersja JBoss
- aplikacje na nim oparte można transferować na JBoss
- ciągle rozwijany
http://wildfly.org
Know-how: instalacja serwera
1) Rozpakować 2) cd bin 3) ./add-user.sh 4) ./standalone.sh
Ważne instrukcje - początek pracy z Wildfly
Know-how: praca nad aplikacją
Podgląd przy pomocy Postman
1. Ewolucja kodu programisty Javahttps://medium.com/@webseanhickey/the-evolution-of-a-software-engineer-db854689243#.23fycsejf
2. EJB Entity (Hibernate)http://www.tutorialspoint.com/ejb/ejb_persistence.htm
3. Wydajność Hibernatehttp://phpdao.com/hibernate_vs_jdbc/
4. Java EE SOAPhttp://serviceorientedarchitect.com/how-to-create-and-deploy-a-web-service-with-java-ee-7-and-wildfly-9/
Warto zobaczyć, przetestować
http://www.restapitutorial.comCała dokumentacja
No dobra, praca z dokumentacją wygląda
trochę inaczej