Intro To Database App Dev W/Spring Boot, Angular, Postgres
Published 8/2022
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 4.84 GB | Duration: 7h 43m
Published 8/2022
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 4.84 GB | Duration: 7h 43m
Beginning Database REST/Web Application Development featuring Java Spring Boot, Angular/Typescript, H2 and PostgreSQL
What you'll learn
Build Enterprise apps with Spring Boot REST Webservices, relational database and Angular/Typescript
Java Spring Boot
Angular/Typescript
Database design and SQL DDL, DML
Requirements
BASIC Computer Science, Java Programming and HTML
Description
Learn to develop enterprise applications with a relational database back end, a Java Spring Boot webservice middle tier and an Angular/Typescript client user interface app.This introductory course demonstrates building out a complete 3-tier application operating upon one single database table; then designing and building an increasingly sophisticated schema of tables and views for a demo Aviation scheduling app. Future advanced courses based on this one will flesh out the webservice and client UI apps to operate upon all of the tables in the demo app schema and navigate their relationships: Identifying and non-identifying foreign keys; One-to-many (1:M) and Many-to-Many (M:N) relationships; associative/cross-reference entities; set-based business rules.This course assumes some basic knowledge of Java, HTML and SQL but will take you from Zero on Spring Boot, Maven, Angular/Typescript, ER/Studio and PostgreSQL.The course is evolved from my 2012 book "Java Web Database Application Development" and is based on nearly 30 years of real-world, hands-on professional experience. It is the course I WISH I could have taken when I needed to learn this stuff.TOPICS INCLUDE:Demo App: “FBOAce” Aviation Scheduling SystemSpring BootSpring Boot 101 / Hello WorldMaven 101H2 In-memory databaseJava Persistence API (JPA)Data Model Entity Beans, a.k.a. Data Transfer Objects and JPA AnnotationsWebservice architecture: Components (Controllers, Services, Repositories)Inversion of Control, Dependency Injection, AutowiringJSONPostmanException HandlingInput validationClient UI HTML independent of technologyAngular/Typescript:Angular 101 / Hello WorldNode, npm, Angular cling serveModules and componentsEssential Angular directories, files and/or components:src/main.ts, src/index.html, src/app/app-module.ts, src/app/app.component.ts/html/cssTypescript imports, @NgModule, export class, @Component decorator…Calling webservices with HttpClientStrict ModeReading Configuration Parameters (from json file)Data Types, Modifiers and Scopeconstructor() and injectionClass MethodsngOnInit() and other Lifecycle methodsTypescript Data Types (most common): Primitives, Arrays, Objects (instances of Classes or Interfaces), any and unknown, EnumsExplict vs. Implicit Declarationsasync, await() and PromiseData binding: 1-way, 2-wayStructural Directives: *ngIf (boolean), *ngFor (loop)Routing: <router-outlet>, ActivatedRoute, the routerLink DirectiveString interpolationProperty BindingEvent BindingThe Home component and application componentsListing instances of business entities / database recordsTemplate-based forms: Editing and submitting instances of business entitiesObservablesAsynchronous programingPromises and Observable.toPromise()Local ReferencesPostGreSQL 101InstallationUsing PgAdmin to navigate databases, schemas, tables, views and moreUsing psql (command-line tool)Application data queries and metadata queriesCasE sEnsiTIVity in PostGreSQLExecuting DDL to create schema objectsPostgreSQL PL/pgSQL Programming: Trigger functions and triggers that call the functions“Instead-of” triggers on API ViewsRelational Database Design, Theory and PracticeSchema Design (for complete/advanced demo app) and SQL DDL (data definition language statements)Logical and Physical Data ModelsER Studio DemoAttributes/ColumnsPrimary keys, alternate unique indexesIdentifying and non-identifying relationships/foreign keysOne-to-many (1:M) and Many-to-Many (M:N) relationships; Associative/cross-reference entitiesMultiple relationships between/among the same entities“Super” unique keysSQL data typesSet-based business rule facilitation and enforcementDatabase (API) views and the “driving” tableAnd more!
Overview
Section 1: Introduction
Lecture 1 Intro Trailer
Section 2: Lesson One Prep: A One-Table Webservice for the Enterprise
Lecture 2 Intro to Lesson One: A One-Table App for the Enterprise
Lecture 3 1.1: Spring Boot 101
Lecture 4 1.1.1: What is Spring Boot?
Lecture 5 1.1.2: Java Installation
Lecture 6 Discourse 1.1.3a: Spring Boot Quickstart
Lecture 7 1.1.3b: Spring Boot Quickstart
Lecture 8 1.1.3c: Spring Boot Quickstart
Lecture 9 1.1.3d: Spring Boot Quickstart
Lecture 10 1.1.3e: Spring Boot Quickstart
Lecture 11 1.1.4a: Maven 101
Lecture 12 1.1.4b: Maven 101: IDE Integration and how to get out of trouble…
Lecture 13 1.1.4c: Maven 101: Default Directory Structure
Lecture 14 1.1.4d: Maven 101: Maven Coordinates and Dependency Management
Lecture 15 1.1.4e: Maven 101: Repositories
Lecture 16 1.1.4f: Maven 101: Lifecycles, Phases and Commands
Lecture 17 1.1.4g: Maven 101: Plugins
Lecture 18 1.1.4h: Maven 101: Projects and Archetypes
Lecture 19 1.1.4i: Maven 101: Conclusion and Resources
Section 3: Lesson 1.2: Building the Spring Boot Webservice
Lecture 20 1.2: Our First Database Webservice
Lecture 21 1.2.1a: Initial Configuration for fboace04a
Lecture 22 1.2.1b: IDE: IntelliJ
Lecture 23 1.2.2a: H2 In-memory Database
Lecture 24 1.2.2b: JPA Sneak Peek
Lecture 25 1.2.3: Webservice Architecture
Lecture 26 1.2.4a: Implementation: JPA Model Entities
Lecture 27 1.2.4b: Implementation: JPA Repositories
Lecture 28 1.2.4c: Implementation: Service Component
Lecture 29 1.2.4d: Implementation: REST Controller
Lecture 30 1.2.5: Postman client
Lecture 31 1.2.6: Exception Handling and Reporting
Lecture 32 1.2.7: Input Validation in the Webservice
Section 4: Lesson 1.3: Intro to Client UI HTML
Lecture 33 1.3: Intro to Client UI HTML
Section 5: Lesson 1.4 [Reserved for Future Development]
Lecture 34 1.4: [Reserved for Future Development]
Section 6: Lesson 1.5: [Reserved for Future Development]
Lecture 35 1.5: [Reserved for Future Development]
Section 7: Lesson 1.6: Angular (w/Database 101)
Lecture 36 1.6 Angular (w/Database) 101
Lecture 37 1.6.1 Install Node, npm, cli
Lecture 38 1.6.1.1 Install Node on Windows (GUI)
Lecture 39 1.6.1.2 Install Node on Linux (command line)
Lecture 40 1.6.1.3 Install Angular CLI
Lecture 41 1.6.2 Hello World! (Angular)
Lecture 42 1.6.3 Project fboace04-ng-ev1x-one-simple-table
Lecture 43 1.6.3.1: TypeScript Concepts: app-module.ts
Lecture 44 1.6.3.2: Typescript Concepts: aircraft-type-list.component.ts
Lecture 45 1.6.3.3: Typescript Concepts: aircraft-type-list.component.HTML
Lecture 46 1.6.3.4: The Home Component
Section 8: Lesson 1.7: Data Manipulation with Angular
Lecture 47 1.7 Angular C.R.U.D.
Lecture 48 1.7.1 Angular DB CRUD in the List Component
Lecture 49 1.7.1.1: Asynchronous Programming and Observables
Lecture 50 1.7.1.2: Invoking the Edit form from the List form
Lecture 51 1.7.2: Angular Insert/Update from the Edit form component
Lecture 52 1.7.2.1 Template-based HTM Forms, local references and more
Lecture 53 1.7.2.2 The Edit component Typescript class code
Section 9: Lesson Two: Database Installation and Tools
Lecture 54 PostgreSQL Installation and Tools
Lecture 55 PostGreSQL Installation on Windows
Lecture 56 Coming Soon! PostgreSQL Installation on Mac OS
Lecture 57 Using pgAdmin
Lecture 58 Using the psql command-line tool
Section 10: Lesson Three: Schema Design, SQL DDL and Database Programming
Lecture 59 Schema Design and DDL Overview
Lecture 60 Parent-Child Relationships: Aircraft Type and Aircraft
Lecture 61 Many-to-Many Relationships: Pilot, Aircraft Type and Certification
Lecture 62 Multiple Relationships between the Same Entities: Airport and Flight
Lecture 63 Set-Based Business Rules: Pilots qualified to serve on the crew of a Flight
Lecture 64 Generating the Physical Model
Lecture 65 Generating PostGreSQL DDL: Tables, columns, keys, constraints, indexes
Lecture 66 Executing PostGreSQL DDL (in PgAdmin)
Lecture 67 PostGreSQL DDL: API Views
Lecture 68 PostgreSQL Programming: Triggers
Section 11: Wrap Up
Lecture 69 Coming Soon: Intermediate and Advanced
Section 12: Just for Fun
Lecture 70 Howard auditions for the Winter Olympics
Computer Science/IT students and professionals breaking into or enhancing their knowledge and skills in this discipline.