Skip to main content
Dat 2nd Sem Fall 2025
Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

Messageboard

Messageboard - Fullstack

Nu skal vi i gang med at kode frontend og backend til et simpelt messageboard. Vi skal bruge Javalin, Thymeleaf og en database.

Tirsdag

  1. Vi gennemgår og udpensler projektidé.
  2. På baggrund af det laver vi en simpel domænemodel og et ER-diagram (ERD) over databasen
  3. Så går vi i gang med at kode. Først oprettes et Java / Maven projekt i IntelliJ (instruktioner)
  4. Dernæst oprettes en database i Postgres, og der lægges lidt fake data ind i tabellerne

Det bruger vi så resten af ugen på. Her er en cirka plan over hvad vi skal nå at gennemgå:

  • Domænemodel
  • ER-diagram
  • Projekt setup
  • Database setup
  • Indsæt fake data i databasen
  • Implementer den første user story

Der hører en del teknikker til at udvikle Javalin webapplikationer. Vi skal blandt andet gennem følgende:

  • Opsætning af Javalin projekt
  • Opsætning af Thymeleaf
  • Opsætning af Postgres database og ConnectionPool
  • Opsætning af datamappere
  • Opsætning af routes
  • Opsætning af controllers
  • Opsætning af thymeleaf templates. Herunder layout, fragments, billeder, links, forms, knapper og diverse udtryk.
    • Variable Expressions: ${}
    • Link (URL) Expressions: @{}
    • For-each loop: th:each
    • Conditional statements: th:if, th:unless, th:switch, th:case
  • Behandling af http requests (GET, POST, PUT, DELETE)
  • Behandling af form data
  • Brug af sessions

Torsdag

Vi begynder med at gøre status på hvor langt vi er nået og kører videre derfra.

Fredag

Dagens fredagsopgave går ud på at færdiggøre vores messageboard webapplikation.

Her er en tjekliste udarbejdet fra vores Definition of Done:

  • #### 1. Registrér bruger
  • #### 2. Login/logud
  • #### 3: Opret post (titel + tekst + evt. billede)
  • #### 4: Se liste af posts på forsiden
  • #### 5: Se detaljer for en post (inkl. kommentarer)
  • #### 6: Tilføj kommentar til en post
  • #### 7: Upvote/Downvote posts og kommentarer
  • #### 8: Implementer søgefunktionalitet (find posts ud fra søgeord)
  • #### 9: Add styling
  • #### Forbered præsentation af hvor langt du nået til mandag