A back-end web service for saving gym workouts to a PostgreSQL database.
Configure application.properties
file in resources
folder
Run the server:
mvn spring-boot:run
mvn spring-boot:run -Dspring-boot.run.profiles.local
ssh -i "./Downloads/gym-tracker-key-pair.pem" [email protected]
See what java 21 is called specifically
yum list | grep java-21
Install java headless
sudo yum install java-21-amazon-corretto-headless.x86_64
mvn clean install
From home directory
scp -i /home/josh/Downloads/gym-tracker-key-pair.pem ./gym-tracker-server/target/gym-tracker-server-0.0.1-SNAPSHOT.jar [email protected]:/home/ec2-user
java -jar gym-tracker-server-0.0.1-SNAPSHOT.jar
Postgres should just be running?
Switch to postgres user
sudo -i -u postgres
Start psql client
psql
Exit psql
\q
Create new database (must be as postgres user)
createdb db_name
Switch to new database
psql -d db_name
View connection info
\conninfo
- Username - should be
postgres
- Password - default is
postgres
Start psql client
\password postgres
From postgres user
pg_dump -h gym-tracker.ctvjp0tbn6qi.eu-west-2.rds.amazonaws.com -p 4323 -U postgres -Fc -b -v -f dump.sql
To be entered with git bash (single quotes don't work with windows terminal)
curl -v -X POST localhost:8080/register -H 'Content-type:application/json' -d '{"email": "[email protected]", "password": "1234"}'
curl -X POST localhost:8080/login -H 'Content-type:application/json' -d '{"email": "something", "password": "asdasdaw"}'
curl -X POST localhost:8080/workouts -H 'Content-type:application/json' -d '{"date":"2023-12-23T22:42:14.330Z","duration":3600,"exercises":[{"name":"Squat","sets":[{"type":0,"weight":30,"reps":5},{"type":0,"weight":35,"reps":5},{"type":0,"weight":37.5,"reps":8},{"type":0,"weight":30,"reps":5}]},{"name":"Bench Press","sets":[{"type":0,"weight":25,"reps":5},{"type":0,"weight":27.5,"reps":5},{"type":0,"weight":32.5,"reps":8}]}]}'
curl -X GET localhost:8080/workout