Rating 5.0 out of 5 (1 ratings in Udemy)
What you'll learn
- Demo-Datenbank aufsetzen, Verbindungsdaten bestimmen
- CRUD-Operationen mit dem JdbcTemplate realisieren
- OR-Mapping mit Hibernate und Jakarta Persistence
- Repositories mit Spring Data schreiben
Description
Dieser Kurs ist eine Fortsetzung des erstes Kurses, Spring Boot & Spring Framework: IoC, DI, Bean-Container. Teilnehmer:innen können unter https :// github . com/ullenboom/date4u-spring-boot-2 den letzten Stand (Branch: …
Rating 5.0 out of 5 (1 ratings in Udemy)
What you'll learn
- Demo-Datenbank aufsetzen, Verbindungsdaten bestimmen
- CRUD-Operationen mit dem JdbcTemplate realisieren
- OR-Mapping mit Hibernate und Jakarta Persistence
- Repositories mit Spring Data schreiben
Description
Dieser Kurs ist eine Fortsetzung des erstes Kurses, Spring Boot & Spring Framework: IoC, DI, Bean-Container. Teilnehmer:innen können unter https :// github . com/ullenboom/date4u-spring-boot-2 den letzten Stand (Branch: origin) herunterladen und darauf aufbauen.
Wir widmen uns hier den der Datenbankanbindung, sodass die Profile der einsamen Einhörner verwaltet werden können.
Spring-Boot-Starter-JDBC
Springs Helfer für Datenbankzugriffe
Spring Boot Starter JDBC; H2-Treiber einbinden; Verbindungsdaten bestimmen; JdbcTemplate-Beispiel; Connection-Pooling HikariCP; JDBC-Zugriffe mit P6Spy loggen
Paketübersicht org.springframework.jdbc; DataAccessException; DataSourceBuilder; mehrere Datenbankverbindungen; DataSourceUtils
Bonus: Einfache Methoden von JdbcTemplate; query*(...); update(...)
Bonus: Objekt-Mapping mit dem JdbcTemplate; *RowMapper; RowCallbackHandler; ResultSetExtractor; PreparedStatementCreator und autogenerierten Schlüssel empfangen
Bonus: NamedParameterJdbcTemplate; SqlParameterSource; [Connection|Statement]Callback
Bonus: Batch-Operationen; *PreparedStatementSetter; SqlParameterSourceUtils
Bonus: LOB, BLOB, CLOB; *LobHandler
Bonus: Typen im Paket org.springframework.jdbc.core.simple; SimpleJdbcInsert einsetzen
Bonus: Typen im Paket org.springframework.jdbc.object; MappingSqlQuery
Transaktionen; JDBC-Transaktionen und Auto-Commit; Bedeutung vom PlatformTransactionManager; TransactionTemplate; physikalische und logische Transaktionen; deklarative Transaktionssteuerung mit @Transactional
Objektrelationale Mapping mit Jakarta Persistence
Einführung in das objektrelationale Mapping
Jakarta Persistence Standard; Implementierungen/Provider
Spring Boot Starter Data JPA; Konfigurationsproperties (Logging)
Jakarta Entity Bean schreiben; Annotationen: @Entity, @Id, generierte Schüssel; implementieren von Konstruktoren, Setter/Getter-Methoden; richtiges Überschreiben von equals/hashCode/toString; IntelliJ-Plugin JPABuddy
EntityManager injizieren; Entity-Beans mit find(...) laden; Unterschied find(...)/getReference(...)
JPQL, Teil 1: Einführung in die Jakarta Persistence Query Language; einfache SELECT-FROM-Abfragen; Typed[Query]; Paginierung
JPQL, Teil 2: WHERE-Einschränkung; Positionsparameter und benannte Parameter nutzen
JPQL, Teil 3: Arithmetische und logische Operatoren; Vergleichsoperatoren; BETWEEN; IN; JPQL: NULL-Behandlung; LIKE mit Pattern-Matching; eingebaute Funktionen
JPQL, Teil 4: DISTINCT; Projektionen; Aggregatfunktionen; Tuple; GROUP-BY/HAVING; Konstruktor-Ausdruck
Named Queries; @NamedQuery
Bonus: Native SQL-Anfragen; Abbildungen definieren; @NamedNativeQuery
Schreibender Zugriff über den EntityManager; persist(...); EntityTransaction; JpaTransactionManager; @Transactional; merge(...); remove(...); flush() und refresh(...)
Zusammenhang EntityManager und PersistenceContext; Zustandsübergänge (new, managed, detached, removed); Automatic-Dirty-Checking
Weiterführende OR-Metadaten, Teil 1: @Table; AccessType; @Transient; @Column
Weiterführende OR-Metadaten, Teil 2: Individuelles Mapping; @Enumerated; @Lob; AttributeConverter; @IdClass; @EmbeddedId; @Embeddable; @MappedSuperclass
1:1-Assoziationen; @OneToOne; Owning-Site; JPA-Queries mit implizitem und explizitem Join
1:n-Assoziationen; @ManyToOne; @OrderBy; JPQL-Schlüsselwörter für Sammlungen
n:m-Assoziationen; @ManyToMany
FetchType LAZY und EAGER; LazyInitializationException; N+1-Query-Problem; FETCH-JOIN; Entity-Graph deklarieren und anwenden
Kaskaden; CascadingType; Weisen entfernen
Repositories: Motivation und Implementierung; Datenzugriffsschicht; CRUD-Operationen; SimpleJpaRepository
Spring Data JPA
Motivation von Spring Data; CrudRepository erweitern
JpaRepository oder Repository erweitern
PagingAndSortingRepository: Sortieren; Sort, Order und TypedSort
PagingAndSortingRepository: Paginierung; Pageable, PageRequest und Page; Performance-Diskussion
Query-By-Example mit dem QueryByExampleExecutor; Example; ExampleMatcher
Eigene Abfragen mit @Query formulieren; @Modifying; Sort/Pageable-Parameter; JpaSort; SpEL in Queries; @NamedQuery ansprechen; native Abfragen
Gespeicherte Prozeduren aufrufen
Derived Query Methods; Methodenaufbau: Subjekt und Prädikat; Repository-Schlüsselwörter; Rückgaben; @Async
JPA Criteria API; JpaSpecificationExcecutor; Specification; Metamodell-Generator; Performance-Tuning
Querydsl; Metamodell und Q-Types generieren; QuerydslPredicateExecutor; BooleanBuilder
Gutes Design mit Repositories; Interface-Segregation-Prinzip; Trennung der Typen Domämenmodell/Infrastrukturschicht; Fragment-Interface
In den Branches unter https: // github . com/ullenboom/date4u-spring-boot-2 liegen die im Kurs entwickelten Programme.
Paid
Self paced
Intermediate Level
German
54
Rating 5.0 out of 5 (1 ratings in Udemy)
Go to the Course
