TLDR
Scaffolding a Java Spring project with all relevant dependencies. Then, creating a Postgres DB instance and connecting the Java service to it.
- JDBC
- Spring Web
- Flyway Migrations
- Web Sockets (not yet used)

Main work
- Installing Postgres, DBeaver, Maven, IntelliJ.
- Setting up a basic REST controller, JDBC repository, and Postgres connection in the Java service.
- Running tests via
curland IntelliJ debugger breakpoints.
Challenges
- Configuring / installing Postgres on Ubuntu and understanding the many CLI tools related to it.
- Setting up DBeaver for database interactions via GUI.
- Setting up JDBC boilerplate code and executing an end-to-end manual test.
- Documenting / desiging the system to be buildable / repeatable (e.g., creating the database tables, spinning up Angular server, spinning up Java service).
- Do not yet have a tool for making HTTP requests (want to avoid Postman not that it is paid).
- Possibly will just use
curluntil requests get too complicated.
- Possibly will just use
Learnings
- Postgres is very powerful, and it has many configuration options I’ll likely misconfigure from inexperience.
- Flyway can be used to make repeatable database migrations. Should be able to use to make database schema buildable / repeatable for deployments.