Note: In the dev profile, the repositories are cleared before startup and the initial data is loaded (see LoadInitialData.java).
Build application:
mvn clean installStart Postgres docker container:
docker run -d -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=postgres -p 5432:5432 postgres:17-alpineStart application (data source configured via application.yaml):
cd application
mvn spring-boot:run -Dspring-boot.run.profiles=devAll POS:
curl http://localhost:8080/api/posPOS by ID:
curl http://localhost:8080/api/pos/1 # add valid POS id herePOS by name:
curl http://localhost:8080/api/pos/filter?name=Cafeteria%20(Mensa) # add valid POS name herecurl --header "Content-Type: application/json" --request POST --data '{"name":"New Café","description":"Description","type":"CAFE","campus":"MAIN","street":"Teststraße","houseNumber":"99","postalCode":12345,"city":"Bayreuth"}' http://localhost:8080/api/posSee bean validation in action:
curl --header "Content-Type: application/json" --request POST --data '{"name":"","description":"","type":"CAFE","campus":"MAIN","street":"Teststraße","houseNumber":"99","postalCode":12345,"city":"Bayreuth"}' http://localhost:8080/api/posUpdate title and description:
curl --header "Content-Type: application/json" --request PUT --data '{"id":19,"name":"New Café (UBT)","description":"My description","type":"CAFE","campus":"MAIN","street":"Teststraße","houseNumber":"99","postalCode":12345,"city":"Bayreuth"}' http://localhost:8080/api/pos/19 # set correct POS id here and in the bodyAll users:
curl http://localhost:8080/api/usersUser by ID:
curl http://localhost:8080/api/users/1 # add valid user id hereUser by login name:
curl http://localhost:8080/api/users/filter?login_name=jane_doe # add valid user login name herecurl --header "Content-Type: application/json" --request POST --data '{"loginName":"new_login_name","emailAddress":"new.person@uni-bayreuth.de","firstName":"New","lastName":"Person"}' http://localhost:8080/api/usersSee bean validation in action:
curl --header "Content-Type: application/json" --request POST --data '{"loginName":"new_login_name!","emailAddress":"new.personATuni-bayreuth.de","firstName":"","lastName":""}' http://localhost:8080/api/usersUpdate login name and email address:
curl --header "Content-Type: application/json" --request PUT --data '{"id":1,"createdAt":"2025-05-27T17:11:49.272537","updatedAt":"2025-05-27T17:11:49.272541","loginName":"jane_doe_new","emailAddress":"jane.doe.new@uni-bayreuth.de","firstName":"Jane","lastName":"Doe"}' http://localhost:8080/api/users/1 # set correct user id here and in the body