Java - Web Applications e Web API
- Oltre Java
- 01. Introduzione
- Introduzione alla programmazione in rete
- 02. La programmazione in rete
- 03. Meccanismi di comunicazione
- 04. IP
- 05. TCP
- 06. Protocolli di comunicazione e porte TCP
- 07. Basi della programmazione in rete con Java
- 08. Un client daytime di esempio
- 09. Un semplice server di esempio
- 10. Client del server di esempio
- 11. Riepilogo
- Protocollo HTTP
- 12. Handshake: client e web server
- 13. Strumenti didattici: un web server
- 14. Strumenti didattici: avvio e test del web server
- 15. HTTP
- 16. Struttura di HTTP
- 17. Richieste HTTP: i metodi
- 18. Richieste HTTP: risorse e versione
- 19. Richieste HTTP: headers e body
- 20. Risposte HTTP
- 21. L'header "content-type"
- 22. Esercitazione su HTTP
- 23. Proposta di soluzione
- 24. Proposta di soluzione
- Tecnologie Java
- 25. Java Standard, Java Enterprise
- 26. Tecnologie
- 27. Una tecnologia per esemplificare
- 28. Versioni: Java EE e Jakarta EE
- 29. Focus e inquadramento degli obiettivi
- XML binding
- 30. Tecnologia XML Binding
- 31. XML
- 32. Come utilizzare una tecnologia Enterprise
- 33. Jakarta XML Binding
- 34. Configurare gli oggetti per XML binding
- 35. Personalizzazione del parsing XML e tipi dati non standard
- Strumenti di sviluppo
- 36. IDE per Java Enterprise
- 37. Download e installazione di Eclipse IDE
- 38. Configurazione del workspace e dei JDK
- 39. Le "perspectives" in Eclipse IDE
- 40. Configurazione di un progetto Java in Eclipse
- 41. Funzionalità principali in Eclipse
- 42. Project Management
- 43. Maven: installazione
- 44. Maven: Artefatti e lyfecycle
- 45. Maven: creazione di un progetto
- 46. Usare Maven in Eclipse
- 47. Gestione delle dipendenze con Maven
- 48.Packaging e produzione dell'artefatto finale
- Servlet Technology
- 49. WebApplications: servlet e containers
- 50. WebApplications: struttura generale
- 51. ServletContainers e ApplicationServers
- 52. Apache Tomcat: installazione
- 53. Apache Tomcat: configurazione
- 54. Tomcat embedded in Eclipse IDE
- 55. Introduzione alla servlet technology
- 56. Installazione di Eclipse Tools per EE
- 56. Creare un progetto Web Application con Maven
- 57. Creare una "Generic Servlet"
- 58. Servlet Lyfecycle e path multipli
- 59. Packaging e deployment di una Web Application
- 60. Creare una "HttpServlet"
- 61. HttpServletRequest
- 62. Esercitazione
- 63. Proposta di soluzione (1:3).
- 64. Proposta di soluzione (2:3)
- 65. Proposta di soluzione (3:3)
- 66. HttpServletResponse
- 67. Response Status
- 68. Redirect, Headers e gestione dell'output
- 69. Resources e ResourceStream
- 70. Resources e ResourceStream
- 71. ContentType, ContentLength, ContentDisposition
- 72. InitParameters
- 73. Servlet @nnotations
- 74. Esercitazione
- 75. Filters
- 76. Un filtro di esempio
- 77 .Filters chain
- 78. Filter @nnotations
- 79. Esercitazione
- 80. Proposta di soluzione (1:2)
- 81. Proposta di soluzione (2:2)
- Web Applications e Web Api
- 82. Web applications & Web API
- 83. JSP, JSF, WebServices e REST API
- Web Applications
- 84. Web applications - ruolo delle Form Html
- 85. QueryStrnig e Form Parameters
- 86. Recupero dei parametri di una form
- 87. Un progetto reale - download e setup
- 88. Un progetto reale - specifiche e setup del database
- 89. Due esempi di form
- 90. Esercitazione
- 91. Proposta di soluzione (1:2)
- 92. Proposta di soluzione (2:2)
- 93. Jakarta Server Pages
- 94. JSP - Scriptlet
- 95. JSP- Expressions e Scriptlet articolate
- 96. JSP - Declarations
- 97. Oggetti impliciti JSP
- 98. Un esempio "improprio"
- 99. Esercitazione
- 100. Proposta di soluzione
- 101. Servlet o JSP? Business Logic vs Presentation
- 102. Request Dispatcher
- 103. Architettura Model View Controller
- 104. Applicazione di MVC - i Request attributes
- 105. Esempio MVC - catalogo prodotti
- 106. Catalogo prodotti - la business logic
- 107. Catalogo prodotti - la view
- 108. Esercitazione - registrazione utente
- 109. Proposta di solizione 1:2
- 110. Proposta di solizione 2:2
- 111. Expression Language
- 112. EL - oggetti predefiniti e Scoped Objects
- 113. Direttive JSP
- 114. Diretiva @Page
- 115. Diretiva @Include
- 116. Diretiva @TagLib
- 117. Standard Tag Library
- 118. Esercitazione
- 119. Proposta di soluzione
- 120. Processo di Login e protezione delle risorse
- 121. Gli scope Session e Application
- 122. Utilizzo dell'oggetto Session
- 123. Identificazione della sessione
- 124. Filtro di gestione del login
- 125. Applicazione concreta del Filter Login
- 126. Verifica mediante debug del login filter
- 127. Eventi e Listeners
- 128. ContextListener e HttpSessionListener
- 129. Esercitazione finale su Web Applications
- REST-API
- 130. Introduzione alle REST API
- 131. EndPoints CRUD e HTTP
- 132. Richiete e risposte HTTP con REST
- 133. JSON e JSON-Binding
- 134. Esempio di serializzazione oggetti con Json
- 135. Personalizzazione dei criteri di conversione Json
- 136. Jakarta RESTFull Services - Jersey
- 137. Creazione di una RESTFull application (teoria)
- 138. Creazione di un EndPoint (teoria)
- 139. Strumenti di sviluppo - client HTTP Rest
- 140. Creazione di una RESTFull application con endpoint (pratica)
- 141. I contenuti delle risposte
- 142. Collegamento a database per esporre i dati delle risorse
- 143. Gestione delle risposte in caso di errori
- 144. QueryParameters e FormParameters
- 145. PathPatameters
- 146. Altri parametri
- 147. @Consumes e @Produces
- 148. CRUD: aggiunta di una risorsa
- 149. CRUD: aggiornamento di una risorsa
- 150. CRUD: eliminazione di una risorsa
- 151. Esercitazione: realizzare autonomanente un endpoint
- 152. Prosposta di soluzione 1/3
- 153. Prosposta di soluzione 2/3
- 154. Prosposta di soluzione 3/3
- 155. @Context - Injection
- 156. Providers e Filters
- 157. Creare un Filter per gli EndPoints
- 158. Autenticazione mediante Filters
- 159. Applicazione "mirata" dei filters
- 160. Autenticazione mediante token
- 161. JWT: Json Web Token
- 162. Creazione dei tokens JWT
- 163. Validazione dei tokens JWT
- 164. Trasmissione agli EndPoint delle credenziali
- Esercitazione finale
- 165. Esercitazione: Costruzione di un'API per un'applicazione REACT
- 166. Esercitazione: Materiali di partenza e documentazione
52. Apache Tomcat: installazione
Apache Tomcat: installazione
Java - Web Applications e Web API
Apprendi le tecnologie Java Enterprise per lo sviluppo di Web Applications e delle moderne Web REST API su cui si basa la programmazione cloud
Questo corso si focalizza sulle tecnologie denominate “Java Enterprise” orientate allo sviluppo WEB.
Viene qui affrontata la tematica della programmazione di rete ed in particolare della programmazione che si avvale della rete Internet e del suo principale veicolo di trasmissione: il protocollo http, vera e propria struttura portante del mondo WEB e cloud.
Dopo un primo approccio alla programmazione mediante il protocollo TCP/IP, verrà approfondito il tema del protocollo HTTP e dei web server, la cui comprensione permette un approccio consapevole alle tecnologie WEB.
Di seguito viene presentato l’universo delle tecnologie Java Enterprise, illustrando come queste si siano sviluppate nel tempo grazie alla piattaforma Java Enterprise Edition fino alla sua nuovissima evoluzione che ha portato alla nascita di Jakarta EE.
Vengono quindi analizzate alcune delle tecnologie fondamentali della piattaforma Java EE / Jakarta EE quali quelle legate alla gestione delle codifiche XML e JSON per meglio comprendere come questo universo Enterprise è strutturato e per imparare a “nuotarci” in autonomia.
Al centro del percorso si colloca la trattazione della Java Servlet Technology, ossatura portante di tutte le tecnologie WEB basate su Java. Da qui il percorso si dirama nelle due direzioni principali legate alle sviluppo web: quello della costruzione di Web Applications e quello della realizzazione di REST API
Nel primo filone si affronta il tema di come realizzare applicazioni dotate di interfaccia grafica basata sugli standard HTML e CSS basandosi sulla tecnologia java più immediata per la loro realizzazione, la tecnologia JSP la cui comprensione permette di acquisire tutto un insieme di competenze utili anche per affrontare eventualmente ulteriori framework che presentino la medesima architettura, quali JSF o Spring MVC
Nel secondo filone invece si affronterà il tema delle moderne applicazioni che prevedono una separazione netta tra il frontend, solitamente realizzato nella forma di applicazioni Javascript basate su REACT o Angular oppure nella forma di app mobile, e il backend, realizzato appunto mediante la creazione di Web REST API. Vengono qui presentati gli aspetti fondamentali nella progettazione e modellazione di REST API che, tra le altre cose, sono sempre più utilizzate all’interno delle più recenti architetture cloud based.
Ogni “step” del percorso viene accompagnato da prove pratiche in cui chi segue le lezioni potrà cimentarsi per testare in proprio le conoscenze acquisite. Il tutto sarà corredato da due esercitazioni finali, una legata alla realizzazione di una web application completa (bookstore) e una legata alla realizzazione del backend di un’applicazione REACT (kanban) mediante la costruzione di una REST API che permette all’applicazione di operare.
Iscriviti al corso "Java - Web Applications e Web API" per poter visualizzare la lezione
Vai al corso