Web in springBoot
This commit is contained in:
parent
5fb4530b79
commit
574cc6dbb2
4 changed files with 76 additions and 0 deletions
1
.idea/gradle.xml
generated
1
.idea/gradle.xml
generated
|
|
@ -1,5 +1,6 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<project version="4">
|
<project version="4">
|
||||||
|
<component name="GradleMigrationSettings" migrationVersion="1" />
|
||||||
<component name="GradleSettings">
|
<component name="GradleSettings">
|
||||||
<option name="linkedExternalProjectsSettings">
|
<option name="linkedExternalProjectsSettings">
|
||||||
<GradleProjectSettings>
|
<GradleProjectSettings>
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,48 @@
|
||||||
|
package fr.teamflash.messageries.controllers
|
||||||
|
|
||||||
|
import fr.teamflash.messageries.models.UserBean
|
||||||
|
import org.springframework.stereotype.Controller
|
||||||
|
import org.springframework.ui.Model
|
||||||
|
import org.springframework.web.bind.annotation.GetMapping
|
||||||
|
import org.springframework.web.bind.annotation.PostMapping
|
||||||
|
import org.springframework.web.servlet.mvc.support.RedirectAttributes
|
||||||
|
|
||||||
|
@Controller
|
||||||
|
class UserController {
|
||||||
|
|
||||||
|
@GetMapping("/login")
|
||||||
|
fun login(model: Model, userBean: UserBean): String {
|
||||||
|
model.addAttribute("login", userBean.login)
|
||||||
|
model.addAttribute("password", userBean.password)
|
||||||
|
return "login"
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("/loginSubmit") //traite le formulaire
|
||||||
|
fun loginSubmit(userBean: UserBean, redirect: RedirectAttributes) : String {
|
||||||
|
try {
|
||||||
|
if (userBean.login.isBlank()) {
|
||||||
|
throw Exception("Login manquant")
|
||||||
|
}
|
||||||
|
if (userBean.password.isBlank()) {
|
||||||
|
throw Exception("Mot de passe manquant")
|
||||||
|
}
|
||||||
|
//Cas qui marche
|
||||||
|
redirect.addFlashAttribute("userBean", userBean)
|
||||||
|
return "redirect:userRegister" // Redirection sur /userRegister
|
||||||
|
} catch (e:Exception) {
|
||||||
|
e.printStackTrace()
|
||||||
|
|
||||||
|
//Cas d'erreur
|
||||||
|
redirect.addFlashAttribute("errorMessage", e.message)
|
||||||
|
redirect.addFlashAttribute("userBean", userBean)
|
||||||
|
return "redirect:login" //Redirige sur /login
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/userRegister") //Affiche la page résultat
|
||||||
|
fun userRegister(model: Model, userBean: UserBean): String {
|
||||||
|
|
||||||
|
model.addAttribute("userBean", userBean)
|
||||||
|
return "userRegister" //Lance userRegister.html
|
||||||
|
}
|
||||||
|
}
|
||||||
8
Messageries/src/main/resources/templates/login.html
Normal file
8
Messageries/src/main/resources/templates/login.html
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
<!-- th:action="'/loginSubmit'" ou action="/loginSubmit" -->
|
||||||
|
<form method="post" action="/loginSubmit" th:object="${userBean}">
|
||||||
|
|
||||||
|
<p>Login: <input th:field="*{login}" type="text"/></p>
|
||||||
|
<p>Password: <input th:field="*{password}" type="password"/></p>
|
||||||
|
|
||||||
|
<p><input type="submit" value="Submit"/></p>
|
||||||
|
</form>
|
||||||
19
Messageries/src/main/resources/templates/userRegister.html
Normal file
19
Messageries/src/main/resources/templates/userRegister.html
Normal file
|
|
@ -0,0 +1,19 @@
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="fr-FR">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport"
|
||||||
|
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||||
|
<title>Document</title>
|
||||||
|
|
||||||
|
<link href="/css/styles.css" rel="stylesheet">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<h1 th:text="'Bonjour ' + ${userBean.login}"></h1>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
Loading…
Add table
Reference in a new issue