Løsningsforsalg/hjelp til oppgaver i DATA1700-1 21V Webprogrammering ved OsloMet
Deployering av repo: https://oppglfwebprogv21.herokuapp.com
Klient (frontend) kode ligger i
mappen /src/main/resources/static/
Tjener/server (backend) kode ligger i
mappen /src/main/java/
-
Introduksjon 🕹
- Bli kjent med IDE, laste ned jdk
- Opprette nytt Spring Initializr prosjekt
- HalloVerden program i javascript
-
JavaScript 1 📠
- Funkjsoner og variabler
- Hendelser
- Utskriftsmetoder
-
JavaScript 2 🛠
- Løkker
- Arrays
- Objekter
-
JavaScript 3 👩👧👦
- Input
- HTML-kontrollere
- Nedtrekkslister
- Radioknapper
- Avkrysningsbokser
-
Introduksjon til jQuery 💰
- Startfunksjonen
- Elementer og hendelser
-
Introduksjon til klient/tjener-modellen (Spring) 🛎
- Første tjener program: HelloServer
- Kall/forespørsel fra klient til server og tilbake
- Overføring av objekter
-
Mer om HTTP og lagring av data på server 📚
- Post, get, delete (Ajax)
- Objektorientert programmering på server
- Lagring av data i Arraylist i Repository
-
Styling med Bootstrap 🎨
- Responsiv grid
- Classes
-
Nedtrekkslister, radioknapper og avhuksbokser mot server ☑️
- Dynamisk bygging av html-elementer med data fra server
-
Datastrukturer og rekursjon 🔗
- Enkelt lenket linket liste (LinkedList)
- Sirkulær liste
- Stakk
- Binærsøk
- Basistilfelle for rekursive metoder
- Tårnet i hanoi
-
Lagre data på server i en relasjonsdatabase 1 🏟
- H2-database (in memory)
- SQL setninger for insetting, sortering og uttak
-
Lagre data på server i en relasjonsdatabase 2 💽
- Feilhåndtering og logging av feilmeldinger
- Flere nyttige SQL-setninger
-
Inputvalidering på klinet og tjener/server ✅
- Bruk og implementering av regex på klinet
- Bruk og implementering av regex på tjener
- Flytte varidering på server ut i service
-
Sesjoner 🍪
- "stateless" protokoll
- Http sessions på server
- Generere sessions-ID-er overførte til kilent
- Cookies (informasjonskapsler)
- Timeout
- Innlogging
-
Sikkerhet 🔐
- Kryptering av passord
- Dekryptering av passord
- Bruk av spring framework security
- BCrypt