This is the course home page for the Enterprise Java Course (605.784), taught at John’s Hopkins University, Engineering Programs for Professionals. This version of the site contains the material for Fall 2024 and is based on the Spring/Spring Boot Framework.
Course details can be found using the Course Description and Schedule/Notes links on the left hand side. The Schedule/Notes page provides links to individual lecture notes. The Full Lecture Notes links provide access to course notes for the entire semester. New material will be posted weekly as the semester advances.
If you are looking to review Spring/Spring Boot content from last semester, refer to https://jcs.ep.jhu.edu/legacy-ejava-springboot. The course is always changing, but this will give you details of what was covered in the recent past and provide early reference material for future topics. If you are looking to review JavaEE content from previous semesters, refer to https://jcs.ep.jhu.edu/legacy-ejava-javaee
Legal Disclaimer: The information and opinions expressed within the materials located on this site are the personal contributions of Jim Stafford. Content published here is not reviewed or approved by my employers (The Johns Hopkins University and Nightwing) before it is posted and does not necessarily represent the views and opinions of my employers.
2024-11-20: Updated Assignment End-to-End
2024-11-13: Updated DB TODOs
2024-11-06: Published RDBMS Database notes and assignment 5
2024-10-30: Published IT and Container notes, and assignment 4
2024-10-24: Published AOP notes
2024-10-16: Published UserDetails, Authorization, and HTTPS updates
2024-10-08: Published Security updates
2024-10-02: Published API Content updates
2024-09-25: Published Service/Web API materials
2024-09-18: Published testing and HTTP API materials
2024-09-11: Published logging materials
2024-09-03: Published config materials and Assignment 1
2024-08-28: Posted class site
week13: Mongo Mapping: Mongo Repository, Applicaton End-to-End
review Mongo Book example
complete API Assignment 5.
assignment 5 due by Sun, Dec08, 6am
Thanksgiving Holiday — no class next week
week12: JPA Mapping: JPA Repository (cont), Mongo Mapping: MongoDB, MongoTemplate
review JPA Song example
review Mongo Book example
work on API Assignment 5.
assignment 4 due by Sun, Sun17, 6am
assignment 5 due by Sun, Dec08, 6am
week11: JPA Mapping: RDBMS, JPA, JPA Repository
review JPA Lecture notes
review JPA Song example
started API Assignment 5.
assignment 4 due by Sun, Nov17, 6am
assignment 5 due by Sun, Dec08, 6am
week10: IT and Containers
review Maven IT/Failsafe example
review Docker and IT example
review Testcontainers example
complete API Assignment 4.
assignment 3 due by Sun, Nov03, 6am
assignment 4 due by Sun, Nov17, 6am
Optional: review Maven IT/Failsafe/HTTPS example
Optional: review Docker Compose and IT example
week09: AOP and Method Proxies
review AOP Lecture notes
review AOP Items example
complete API Assignment 3.
assignment 3 due by Sun, Nov03, 6am
week08: Security User Details and Authorization
review UserDetails example
review Authz example
review HTTPS example
work on API Assignment 3.
assignment 3 due by Sun, Nov03, 6am
week07: Security and Authentication
review NoAuth Security example
review Authn Config example
begin API Assignment 3.
assignment 2 due by Sun, Oct13 6am, late pass Wed16 6am, late Sun20 6am
assignment 3 due by Sun, Nov03 6am
week06: Service/Web API
review Content Quotes example
review Swagger Contests example
complete API Assignment 2. Complete parts 2b (content), 2e (service/controller), and 2f (test scenarios)
assignment 2 due by Sun, Oct13, 6am
week05: Service/Web API
review RPC Greeter example
review HTTP-API Gestures example
begin API Assignment 2. Complete parts 2a (modules), 2c (resources), and 2d (web client/API interactions)
"Late pass" assignment 1 submissions due by Sun29, 6am. 1 Week late assignment 1 submissions due by Wed02, 6am
week04: Testing
review Testing Lecture notes
review Testing examples
begin/complete Testing Assignment 1c
all parts of Assignment 1 (App Config, Logging, Testing) due by Wed, Sep25, 6am. Late pass due Sun29, 6am
week03: Auto-Configuration and Logging
begin work on App Config Assignment 1b; plus AutoConfiguration
week02: Application Configuration
complete App Config portions of Assignment 1 (minus AutoConfiguration)
review App Config examples
working on App Config Assignment 1a (minus AutoConfiguration)
week01: Course Intro
post at least 1 test message to Canvas Discussions
setup development environment
review App Build examples
post your weekly discussion contribution(s) based on development environment setup and assignment
complete and turn in assignment 0
assignment 0 due by Tue, Sep03, 6am