O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Database Fundamentals for Java Programmers

Video Description

Database programming and design are core competencies expected of every Java programmer. This code-oriented course moves you toward competency by providing a detailed overview of how to program for the two most common types of database systems used today: The traditional relational RDBMS systems (e.g. Oracle, SQL Server, and PostgreSQL) and the now popular non-relational NoSQL systems (e.g. Mongo DB and Apache Cassandra).

Filled with hands-on action, you'll work with three databases: SQLite3 (relational), PostgreSQL (relational), and MongoDB (NoSQL) and three APIs: JDBC, JPA, and the Java API for MongoDB. In addition, the course also covers the basics of schema design and normalization in RDBMSes.

  • Acquire the database and design knowledge every Java programmer must possess
  • Understand the distinctions in programming for relational systems vs. NoSQL systems
  • Go hands-on with three popular database systems: SQLite3, PostgreSQL, and MongoDB
  • Gain experience programming with the Java JDBC, JPA, and MongoDB APIs
  • Explore the basics of schema design and normalization for RDBMS systems
  • Learn to evaluate the trade-offs between lightweight and heavyweight database systems
  • Course is designed for learners with basic Java skills and access to Java 8 or later
Martin Kalin has a Ph.D. from Northwestern University and is a professor in the College of Computing and Digital Media at DePaul University who's worked with Java since 1995. In addition to teaching, Martin is a commercial programmer who specializes in writing large software systems related to production planning and scheduling. He has co-written a series of books on C and C++ and is the author of six O'Reilly titles, including "Beginning Java Web Development" and "Learning Apache Tomcat".

Table of Contents

  1. Introduction
    1. Overview Of Database Basics Using Java 00:03:06
    2. About Me 00:01:39
    3. Software Requirements And Installation 00:05:48
    4. Database Flavors And Systems 00:08:34
    5. How To Access Your Working Files 00:01:15
  2. JDBC As The Fundamental Java API
    1. JDBC Basics 00:06:41
    2. Overview Of The recClub Database 00:05:06
    3. Code Analysis 1 For The recClub App 00:08:26
    4. Code Analysis 2 For The recClub App 00:10:56
    5. How To Compile And Run The Code Examples 00:06:35
    6. Select Queries Overview 00:07:03
    7. Code Analysis 1 For The Select App 00:06:41
    8. Code Analysis 2 For The Select App 00:11:57
    9. Programming Exercise For Select Queries 00:03:37
    10. Assessment Of The Select Queries Exercise 00:03:42
    11. SQLite3 Client In Detail 00:08:24
    12. Overview Of Webifying A JDBC App 00:05:03
    13. A Sample Web App With JDBC 00:05:27
    14. More On The CRUD Operations In JDBC 00:07:29
    15. JDBC And Related APIs 00:06:07
    16. Wrapup Of JDBC And SQL Basics 00:06:02
  3. Table Design
    1. Data Definition Language (DDL) And Data Manipulation Language (DML) 00:06:08
    2. Table Normalization: Overview And Motivation 00:09:02
    3. Normalization Basics 1 00:08:00
    4. Normalization Basics 2 00:04:35
    5. More On Join Operations 1 00:06:17
    6. More On Join Operations 2 00:06:28
    7. More On Join Operations 3 00:06:29
    8. Indexing And Pattern-Based Searching 00:07:14
    9. Wrapup Of Normalization And Joins 00:06:39
  4. SQL Beyond The Basics
    1. Transactions: The Acid Properties 00:07:05
    2. Transaction Code Analysis 1 00:06:10
    3. Transaction Code Analysis 2 00:04:36
    4. Transaction Programming Exercise 00:03:54
    5. Assessment Of The Transaction Code Example 00:08:08
    6. Data Hierarchies In A Relational Database 00:06:18
    7. Data Hierarchy Code Analysis 00:07:50
    8. Triggers 00:07:10
    9. Wrapup Of Transactions And Triggers 00:04:59
  5. JPA As The Java ORM API
    1. From JDBC To JPA 00:06:19
    2. JPA Code Example Overview 00:05:47
    3. JPA Code Analysis 1 00:08:35
    4. JPA Code Analysis 2 00:09:19
    5. Another JPA Code Example 00:12:15
    6. JPA Programming Exercise 00:06:47
    7. The recClub Database In JPA 00:11:23
    8. Wrapup Of JPA Basics 00:05:25
  6. From SQLite3 To PostgreSQL
    1. PostgreSQL Installation And Setup 00:05:16
    2. A First App Against PostgreSQL 00:08:04
    3. Database Relationships: Overview 00:06:18
    4. EMP-DEPT Code Analysis 1 00:06:20
    5. EMP-DEPT Code Analysis 2 00:08:35
    6. Wrapup Of JPA With PostgreSQL 00:04:29
  7. From Relational To NoSQL Database Systems
    1. NoSQL Databases: Overview And Motivation 00:06:09
    2. MongoDB: Installation And Setup 00:03:46
    3. MongoDB Code Example 1 00:05:07
    4. MongoDB Code Example 2 00:04:09
    5. Porting The recClub Database To MongoDB 00:06:37
    6. MongoDB Under The Hood 00:06:29
    7. MongoDB Queries Example 00:07:52
    8. Wrapup Of NoSQL And MongoDB 00:05:47
  8. Course Wrapup
    1. Wrapup Of The Database Systems And APIs 00:05:34