Spring Boot und Spring Framework
Das leichtgewichtige Spring Framework tritt als Alternative zum Jakarta EE-Container auf und bringt leistungsfähige Mechanismen zur Enterprise-Entwicklung mit. Spring Boot setzt auf dem Spring Framework auf, wobei über Convention-over-Configuration viele Einstellungen vorbelegt sind. Das Seminar zu Spring Boot bringt die Teilnehmer zu den Themen Projektaufbau mit Maven, ›Inversion of Control‹ (IoC), Konfigurationen, AOP, Datenzugriffsschicht, REST und UI auf den neusten Stand.
Inhalte des Seminars
Grundlagen von Spring Boot
- Ursprung unter Hintergründe
- Spring vs. Jakarta EE (Java EE)
- Spring Application Framework vs. Spring Boot
- Entwicklungsumgebungen für Spring (STS), Maven, SPRING INITIALIZR
- Erste Anwendung, Annotationen und
CommandLineRunner
, Shell - Logging mit Sl4j
Der Bean-Container, IoC
- Kontext-Objekte
@Component
,@Autowired
,@Configuration
,@Bean
@Qualifier
,@Primary
,@Order
- Singleton/Prototyp
- Lebenszyklus von Spring Beans,
@PostConstruct
@ConditionalOnXXX
und eineCondition
- Spring Expression Language (SpEL)
Konfigurationen
Environment
- Externe Konfigurationen verwalten
application.properties
undapplication.yml
@Value
,@ConfigurationProperties
- Profile
Testen
- Paketstruktur, Dependencies
@SpringBootTest
,@ExtendsWith
, Unterschied JUnit 4 und 5- Mock-Objekte mit Mockito
Besondere Proxies
- Caching,
@Cachabe
, lokale und verteile Caches - Asynchrone Aufrufe,
@Async
- Java Bean Validierung, JSR-303
- Spring Retry,
@Retryable
, Backoff und Recover
Spring AOP (Aspect-oriented Programming)
- Grundbegriffe: Aspekt, Join-Point, Pointcut
- Spring AOP, Proxies
- AspectJ
Datenzugriffsschicht
- Aufgaben vom Repository/DAO
DataSource
injizieren- Connection-Pooling und P6Spy
JdbcTemplate
und weitere Hilfstypen- Transaktionssteuerung
Spring Data JPA
- Automatisches Generieren von Repositories
Repository
,CrudRepository
PagingAndSortingRepository
@Query
- Query-Erzeugung aus Methodennamen
- JPA,
@Entity
,EntityManager
vs. Spring Data - Ausblick: MongoDB
- Ausblick: Criteria-API, Query-By-Example (QBE), Projektionen, Auditing
- Testen von Repositories
Spring Boot Web und Spring REST
- Controller, Spring MVC
- Statische Ressourcen
- ROCA (Resource-oriented Client Architecture)
- Design von REST-APIs, Best practice
- Mapping-Annotationen, Statuscode, MIME-Typ, XML und JSON
- Auswerten von Parametern
- SOP / Cross-Origin-Request / CORS /
@CrossOrigin
- OpenAPI-Spezifikation (aka Swagger)
- REST-Services konsumieren,
WebClient
, Feign - Ausblick: Dynamische Webseiten mit Thymeleaf, Templates
- Testen von Controllern,
@WebMvcTest
Spring Security
- Filter-Kette
WebSecurityConfigurerAdapter
- Bestimmte URL-Pfade absichern
UserDetailsService
:InMemoryUserDetailsManager
und weitere ImplementierungenPasswordEncoder
,DelegatingPasswordEncoder
, bcrypt einsetzen
Monitoring, Actuator und Metrics
- Actuator Endpoings, Konfiguration
- Health-Checks
- Spring Boot Admin
- JMX
Termine / Kontakt
Jedes Seminar führt tutego als kundenangepasstes Inhouse-Seminar durch.
Alle unsere Seminare können zudem als Live-Online-Seminar besucht werden.
Wir helfen Ihnen gerne bei der Anmeldung und einen passenden Termin zu finden. Kontaktieren Sie uns per E-Mail oder unter 0800/tutegos (kostenlos aus allen Netzen).
Die Fakten
- Empfohlene Schulungsdauer: 3 Tage, insgesamt 24 Unterrichtsstunden à 45 Minuten
- Zielgruppe: Entwickler, die mit Spring Boot leistungsfähige Enterprise-Anwendungen entwickeln möchten.
- Vorkenntnisse: Der Kurs ›Java für Fortgeschrittene‹, ›Java für Umsteiger‹ oder vergleichbare Kenntnisse.
- Schulungsunterlagen: Ausführliche Seminarunterlagen und Referenzdokumentation. Wir freuen uns Ihnen mitteilen zu können, dass dieser Kurs auch als E-Learning-Seminar verfügbar ist, welches 44 Stunden an Videomaterial enthält. So haben Sie die Möglichkeit, den Kurs ganz bequem von zu Hause aus zu absolvieren und sich die Inhalte in Ihrem eigenen Tempo anzueignen. Wir hoffen, dass Ihnen diese Option zusagt und Sie von dieser Gelegenheit profitieren werden.
- Seminar-Software: Standardmäßig die aktuelle Version von Spring Boot 3 auf der Basis vom Spring Framework 6. Als inhouse-Seminar ist auch Spring Boot 2 und Spring Framework 5 möglich.