Difference between revisions of "Back-end instrukcije"

From Wiki EM2
Jump to navigation Jump to search
(Added everything)
 
(Added Team and expectations)
Line 89: Line 89:
# '''DBeaver''' - aplikacija za upravljanje bazama podataka: https://dbeaver.io/
# '''DBeaver''' - aplikacija za upravljanje bazama podataka: https://dbeaver.io/
# '''Postgres''' - Postgres baza podataka: https://www.postgresql.org/
# '''Postgres''' - Postgres baza podataka: https://www.postgresql.org/
#


=== Tim ===
=== Tim ===
Line 96: Line 97:


Također svi članovi tima će biti dostupni i na '''Slacku.'''
Također svi članovi tima će biti dostupni i na '''Slacku.'''
=== Što se očekuje od vas? ===
Aktivni i samostalni pristup zadacima. Potruditi se sami doći do rješenja problema, ako ne uspijete, u svakom trenutku se možete obratiti ostalim članovima tima.
Ako mislite da nešto može bolje, ne ustručavajte se prokomentirati to s kolegama.
Ukoliko postoje stvari koje nisu jasne, bolje je pitati nego ispravljati kod.


== ZADATAK ==
== ZADATAK ==

Revision as of 08:33, 24 January 2022

Spring Boot aplikacija

Spring Initialzr (https://start.spring.io/)

- Online tool za stvaranje Spring Boot aplikacije sa svim potrebnim bibliotekama koje će biti unutar projekta

- Potrebne biblioteke za zadatak:

1. Web – library s klasama za RESTful aplikacije

2. Spring Security – library za upravljanje autorizacijom, pristupima itd...

3. JPA – persistence library (ORM)

4. MySQL/Psql Driver – ako ćete koristiti MySql/Postgres bazu onda treba i taj driver dodati

- Stisnete Generate i dobijete gotov projekt s gotovom arhitekturom koji se samo otvori u

intelliJ-u (link za preuzimanje Community verzije: https://www.jetbrains.com/idea/download/#section=windows) ili nekom drugom IDE-u (Spring Tool Suite)

Struktura za jednostavnije aplikacije (poput ovog zadatka):

Arhitektura Spring Boot aplikacije.png









Linkovi za učenje

- Baeldung – vrlo koristan izvor, jako dobro sve objašnjeno

https://www.baeldung.com/rest-with-spring-series

1. Spring Boot REST Controllers - https://www.baeldung.com/building-a-restful-web-service-with-spring-and-java-based-configuration

- zanemariti testove...

2. Error handling in Spring Boot - https://www.baeldung.com/exception-handling-for-rest-with-spring (Solution 3)

3. Handlanje @RequestBody - https://www.baeldung.com/spring-request-response-body

4. Java Persistence

- https://www.baeldung.com/persistence-with-spring-series

- https://www.baeldung.com/the-persistence-layer-with-spring-data-jpa

- https://www.baeldung.com/spring-data-java-8

- https://www.baeldung.com/spring-data-annotations

- https://www.baeldung.com/spring-boot-h2-database

- https://www.baeldung.com/jpa-entity-table-names

5. Basic Security - https://www.baeldung.com/spring-security-basic-authentication

6. Validation - https://www.baeldung.com/spring-boot-bean-validation

Udemy račun za učenje

Link: https://www.udemy.com/

E-mail: kico206@gmail.com

Lozinka: password

Tečaj se zove: Learn Spring Boot in 100 steps

To je dovoljno dobar tečaj kako bi se upoznali sa Spring Boot-om i njegovim mogućnostima.

Mi najviše koristimo stvari iz Section 5, Section 6 i Section 7. Ali nije se loše upoznati ni s

nekim osnovama (sekcija 1 i 2).

Dodatne poveznice i alati:

  1. Postman - aplikacija za kreiranje REST (Http) zahtjeva na poslužitelj koji ćete kreirati: https://www.postman.com/
  2. DBeaver - aplikacija za upravljanje bazama podataka: https://dbeaver.io/
  3. Postgres - Postgres baza podataka: https://www.postgresql.org/

Tim

U bilo kojem trenutku možete kontaktirati članove tima za konzultacije, pomoć ili savjet.

Popis članova tima i njihov e-mail možete pronaći ovdje.

Također svi članovi tima će biti dostupni i na Slacku.

Što se očekuje od vas?

Aktivni i samostalni pristup zadacima. Potruditi se sami doći do rješenja problema, ako ne uspijete, u svakom trenutku se možete obratiti ostalim članovima tima.

Ako mislite da nešto može bolje, ne ustručavajte se prokomentirati to s kolegama.

Ukoliko postoje stvari koje nisu jasne, bolje je pitati nego ispravljati kod.


ZADATAK

Kreirajte REST servis koji korisniku omogućuje upravljanje svojim (virtualnim) bankovnim računima.

Korisnik može stvoriti novi račun, dodati određenu količinu sredstava na račun, prenijeti sredstva na drugi račun (koji može, a i ne mora biti njegov) te obrisati račun.

Korisnik može imati nekoliko računa.

Podaci o korisniku i računu mogu biti proizvoljni.

Stvoriti konekciju na proizvoljnu bazu podataka te ju koristiti za spremanje podataka.

Na proizvoljan način obaviti autentifikaciju (najlakše In Memory Authentication) korisnika koristeći Spring Security.