Skip to content

Projekat napravljen u okviru predmeta Web programiranje.

Notifications You must be signed in to change notification settings

EnsarKrehmic/onlineForum

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

Web programiranje (V semestar)


PTF UNZE

Podaci o članovima grupe:

Podaci o asistentima

Podaci o predmetu

  • 🔗 Link za Google Classroom:

Google Classroom

Upute za izradu projekta

Treba razviti cijelu web aplikaciju prema zadanim instrukcijama koristeći razvojni okvir Spring Boot za razvoj Java web aplikacija.

Zadaci:

  • Implementirti najmanje 3 kontrolera koji obrađuju različite vrste zahtjeva.
  • Prikazati primjenu metoda GET i POST kroz kontrolere za pronalaženje podataka i punjenje obrazaca.
  • Primijeniti Thymeleaf za uređivanje aplikacije.
  • Integrirati bazu podataka sa MySQL ili PostgreSQL (slobodan izbor).
  • Baza podataka treba imati barem 3 entiteta koje JPA-em se preslikaju u Model-e unutar koda.
  • Implementirati osnovne CRUD operacije (create, read, update, delete) za upravljanje podacima u bazi.
  • Implementirati barem jedan obrazac (formu) za unos korisnika (npr. registracija korisnika) i/ili unošenje drugih podataka.
  • Dodati provjeru valjanosti i validnosti unošenih polja obrasca (npr. @NotNull, @Size) kako bi se spriječile greške.
  • Implementirati funkcionalnost prijavljivanja/odjavljivanja korisnika koristeći Spring Security.
  • Definirati uloge (admin/korisnik) i ograničiti pristup određenim dijelovima aplikacije na osnovu uloge korisnika.

Ocjenjivanje:

  • Ispravnost: Aplikacija radi kako se očekuje i ispunjava funkcionalne zahtjeve (30%).
  • Kvalitet koda: čist, dobro dokumentovan i pravilno strukturiran kod (20%).
  • Korisnički interfejs: Intuitivan dizajn prilagođen korisniku (10%).
  • Integracija baze podataka: Pravilna upotreba JPA/Hibernate i interakcije baze podataka (30%).
  • Sigurnost: Pravilna implementacija autentifikacije i autorizacije korisnika (10%).

Napomene:

  • Moguće koristiti Maven ili Gradle project manager.
  • Potrebno je pridržavati se MVC (Model-View-Controller) arhitekture projekta.
  • Po želji koristiti i neki razvojni okvir za frontend.

Online Forum Aplikacija

Ovo je online forum aplikacija razvijena koristeći Spring Boot. Aplikacija omogućava korisnicima da se registruju, prijave, pregledaju postove i komentarišu, dok administratori imaju dodatne mogućnosti za upravljanje postovima i korisnicima.

Funkcionalnosti

Za korisnike:

  • Registracija i prijava na platformu.
  • Pregled svih postova na forumu.
  • Kreiranje i komentarisanje postova.
  • Pretraga svojih postova prema ključnim riječima.

Za administratore:

  • Upravljanje postovima (dodavanje, uređivanje i brisanje postova).
  • Upravljanje korisnicima (pregled i dodjela uloga).
  • Upravljanje komentarima (pregled, brisanje, dodavanje)
  • Pretraga svih postova prema ključnim riječima

Za goste:

  • Pregled svih postova
  • Pretraga svih postova prema ključnim riječima

Zahtjevi

  • Java 17 ili novija verzija.
  • Maven.
  • MySQL Server (ili drugi DBMS sa odgovarajućom konfiguracijom).
  • IntelliJ IDEA (ili bilo koji drugi preferirani IDE).

Upute za pokretanje

1. Preuzmite projekat

Preuzmite ZIP datoteku projekta koju ste dobili putem GitHub-a ili iz druge platforme.

2. Ekstraktujte datoteke

Ekstraktujte preuzeti ZIP u željeni direktorij na svom računaru.

3. Kreirajte MySQL bazu

Kreirajte novu bazu podataka u MySQL-u. Na primjer: CREATE DATABASE databaseof;

4. Dodajte sljedeći kod u application.properties:

spring.datasource.url= jdbc:mysql://localhost:3030/databaseof (paziti na port) spring.datasource.username=root (vaš username) spring.datasource.password=root (vaša lozinka) spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true

5. Pokretanje aplikacije

Ponovo otvorite projekat u IntelliJ IDEA ili nekom drugom IDE-u.
Pokrenite aplikaciju putem glavne klase (@onlineForum).

Aplikacija će biti dostupna na [http://localhost:8080].

About

Projekat napravljen u okviru predmeta Web programiranje.

Resources

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

No packages published