74 lines
2.5 KiB
Markdown
Executable File
74 lines
2.5 KiB
Markdown
Executable File
## Start aplikacji
|
|
|
|
Zeby wystartowac aplikacje backendu najpierw nalezy postawic testowa baze danych na naszym komputerze za pomoca dockera. Jesli raz juz go odpalimy przy nastepnym razem bardzo mozliwe, ze wlaczy sie sam. AAby sprawdzic czy docker jesty wystartowany mozna uzyc `docker ps`
|
|
|
|
```
|
|
docker-compose -f stack.yml up
|
|
```
|
|
|
|
Nastepnie w `restservice/src/main/resources/application.properties` nalezy podac ip naszego kontenera.
|
|
|
|
```
|
|
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect
|
|
spring.datasource.url=jdbc:mysql://localhost:3306/test
|
|
spring.datasource.username=root
|
|
spring.datasource.password=example
|
|
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
|
|
spring.jpa.hibernate.ddl-auto=create
|
|
|
|
server.port=1285
|
|
```
|
|
|
|
Następnym krokiem jest odpalenie poniższych komend w terminalu.
|
|
|
|
```
|
|
cd restservice
|
|
mvn spring-boot:run
|
|
```
|
|
|
|
## Token
|
|
|
|
Żeby tesotwać API wpełni potrzebny nam jest token który otrzymujemy na podstawie ticketa z systemu autoryzacyjnego **CAS**. Z tego powodu system autoryzacji działa inaczej niż w "książkowych" restowych aplikacjach i np Postman za nas jej nie dokona. Musimy mu podać już uzyskany token. Aby łatwo go uzyskać odpal skrypt
|
|
|
|
```
|
|
python gettoken.py
|
|
```
|
|
|
|
Na koniec w przęglądarce dostaniesz w odpowiedzi token. W samym pliku można zmienić porty aplikacji jeśli to potrzebne.
|
|
|
|
## Api docs
|
|
|
|
Żeby zobaczyć dokumentację api trzeba wejść w przeglądarce na `http://localhost:1285/swagger-ui.html` po odpaleniu aplikacji.
|
|
|
|
### Nazewnictwo odpowiedzi
|
|
|
|
Każdą odp zaczynamy od modelu, który opisuje np. `Courses` a kończymy na `Response`. Między tymi dwoma członami możemy dodawać modyfikatory opisujące dokładniej odpowiedź np. `Default`. W ten sposób możemy otrzymać nazwę `CoursesDefaultResponse.java`
|
|
|
|
## Packaging
|
|
|
|
Zeby spakowac apke do `jara` wystarcza dwie komendy zaczynajac z glownego katalogu projektu
|
|
|
|
```
|
|
mvn clean
|
|
mvn install
|
|
cd restservice
|
|
mvn clean package spring-boot:repackage
|
|
```
|
|
|
|
Utworzony zostanie jar w `restservice/target/restservice-1.0-SNAPSHOT.jar`. Oczywiscie zeby jar zadzialal kontenery dockerowe musza byc odpalone (lub baza danych na serwerze jesli zmienialismy propertisy z localhost)
|
|
|
|
## Generowanie dokumentacji - javadoc
|
|
|
|
```bash
|
|
mvn javadoc:javadoc
|
|
```
|
|
|
|
## Troubleshooting
|
|
|
|
Spring chyba cacheuje jakies dane dotyczace polaczenia wiec jesli spring wywali Ci blad `Connection Refused`, a wiesz, ze ta baza stoi na podanym ip i porcie to sprobuj
|
|
|
|
```
|
|
mvn clean
|
|
mvn install
|
|
```
|