Skip to content

Latest commit

 

History

History
66 lines (53 loc) · 4.22 KB

HELP.md

File metadata and controls

66 lines (53 loc) · 4.22 KB

Getting Started

Reference Documentation

For further reference, please consider the following sections:

Guides

The following guides illustrate how to use some features concretely:

Database Setup Info

MySQL 8.0.x

This is the primary database. All DateTimes are stored and queried in UTC only. (Hint: USE java.time.Instant as Type for all Datetime fields). Handle timezone conversion on your Frontend! For your convenience, I have included a mysqldump file which contains sample data for testing.

  • CREATE new schema called wedemy (any name is OK), with charset utf8mb4.

  • Springboot will create all tables and indexes automatically on the Very First launch.

  • To maintain consistent time-zone (UTC) with your Java server, ensure your JDBC connection URL has parameter connectionTimeZone=UTC. See example below. For native @Query's, use UTC_TIMESTAMP() or UTC_DATE().

    spring.datasource.url=jdbc:mysql://localhost:3306/wedemy?connectionTimeZone=UTC
    # OR, set this
    spring.jpa.properties.hibernate.jdbc.time_zone=UTC

Here is the ERD Diagram for MySQL Db used in the project:

ERD diagram.

Redis v6.0 (or higher)

This project uses Redis for 2 main tasks: Caching, and Storing login sessions. You can download latest Redis (macOS & Linux) from https://redis.io/download. Windows users may download the latest native installer (.msi) from this GitHub repo. Alternatively, you could pull its official Docker image. Another option you could try is Redis Cloud at: https://redis.com/try-free/. Remember to replace Redis credentials inside application.yml (or in your ENV variables).

Tip 💡 Redis now has an OFFICIAL cross-platform desktop GUI client: RedisInsight. Download it free here