HomeSeminareJavaSPRINGBOOT

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.
[LOGO]
[decoration]

Inhalte des Seminars

Grundlagen von Spring Boot

  • Architektur und Ziele von Spring Boot
  • Spring Framework, Spring Boot und Jakarta EE im Vergleich
  • Auto-Configuration und Starter
  • Entwicklungsumgebungen: Spring Tools, IntelliJ IDEA
  • Maven und Gradle
  • Spring Initializr
  • Erste Spring-Boot-Anwendung
  • Logging mit SLF4J und Logback
  • Aufbau typischer Spring-Boot-Projekte

Der Bean-Container und Dependency Injection

  • Inversion of Control (IoC) und Dependency Injection
  • ApplicationContext
  • @Component, @Service, @Repository, @Controller
  • @Autowired, Constructor Injection
  • @Configuration und @Bean
  • Lebenszyklus von Spring Beans
  • @PostConstruct und @PreDestroy
  • Bedingte Konfiguration mit @ConditionalOn...
  • Spring Expression Language (SpEL)

Konfiguration und Profile

  • Environment
  • Externe Konfigurationen verwalten
  • application.properties und application.yml
  • Profile und profilabhängige Konfigurationen
  • @Value
  • @ConfigurationProperties
  • Konfiguration über Umgebungsvariablen und Container
  • Secrets und sensible Konfigurationen

Testen mit Spring Boot

  • Testaufbau und Paketstruktur
  • JUnit 5
  • Mock-Objekte mit Mockito
  • @SpringBootTest
  • @WebMvcTest
  • Repository-Tests
  • Integrationstests
  • Testcontainers im Überblick

Caching, Asynchronität und Validierung

  • Caching mit Spring Cache
  • @Cacheable, @CacheEvict, @CachePut
  • Lokale und verteilte Caches
  • Asynchrone Verarbeitung mit @Async
  • Scheduling mit @Scheduled
  • Jakarta Bean Validation
  • @Valid, @NotNull, @Size

Datenzugriff mit Spring JDBC

  • Aufgaben von Repositorys und DAOs
  • DataSource und Connection Pooling
  • JdbcTemplate
  • JdbcClient
  • Transaktionsverwaltung mit @Transactional

Spring Data JPA

  • JPA und Spring Data JPA
  • @Entity und Entity-Lebenszyklus
  • EntityManager
  • Repository-Konzepte
  • CrudRepository
  • PagingAndSortingRepository
  • Query-Erzeugung aus Methodennamen
  • @Query
  • Pagination und Sortierung
  • Projektionen
  • Query-by-Example (QBE)
  • Auditing
  • Testen von Repositorys
  • Überblick über weitere Spring-Data-Module, etwa MongoDB

Spring Boot Web und REST

  • Spring MVC und DispatcherServlet
  • Controller und REST-Controller
  • Mapping-Annotationen
  • Request- und Response-Verarbeitung
  • HTTP-Statuscodes und MIME-Typen
  • JSON-Verarbeitung mit Jackson
  • Validierung von REST-Anfragen
  • Fehlerbehandlung und Exception Handling
  • Statische Ressourcen
  • Cross-Origin Resource Sharing (CORS)
  • REST-API-Design und Best Practices
  • OpenAPI- und Swagger-Integration
  • REST-Services konsumieren mit WebClient
  • Declarative Clients mit OpenFeign
  • Testen von Web-Anwendungen und REST-Controllern

Spring Security

  • Grundlagen von Spring Security
  • Security Filter Chain
  • URL-basierte Zugriffskontrolle
  • Benutzer- und Rollenverwaltung
  • UserDetailsService
  • PasswordEncoder und bcrypt
  • Formularbasierte Authentifizierung
  • JWT und OAuth2 im Überblick
  • Absicherung von REST-Schnittstellen

Monitoring und Observability

  • Spring Boot Actuator
  • Actuator-Endpunkte konfigurieren
  • Health-Checks
  • Metrics und Micrometer
  • Monitoring mit Prometheus und Grafana
  • Logging und Tracing
  • Observability-Grundlagen

Deployment und Betrieb

  • Erzeugen ausführbarer JAR-Dateien
  • Betrieb in Containern
  • Docker-Grundlagen
  • Konfiguration in Cloud- und Container-Umgebungen
  • Native Images und AOT im Überblick

Die Fakten

  • Schulungsdauer: 3 Tage, insgesamt 24 Unterrichtsstunden à 45 Minuten
  • Gesamtumfang: 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.
  • Softwareumgebung: Standardmäßig die aktuelle Version von Spring Boot 4 auf der Basis vom Spring Framework 7.

Termine / Kontakt

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).

E-Learning-Seminar

Dieser Kurs ist auch als E-Learning-Seminar verfügbar und umfasst 45 Stunden Videomaterial. So können Sie die Inhalte bequem von zu Hause aus und in Ihrem eigenen Tempo durcharbeiten.

Weiterführende Seminare

Jakarta Persistence (JPA), Microservices mit Spring Cloud, Spring Enterprise Integration, Spring AI. Künstliche Intelligenz in Spring-Anwendungen nutzen, Künstliche Intelligenz in Spring-Anwendungen mit LangChain4j

Verweise

Was Teilnehmer sagen