APPLICATION- MISE EN ŒUVRE DES WEB SERVICES AVEC SPRING REST CONTROLLER
❖ @RestController
❖ @GetMapping
❖ @PostMapping
❖ @RequestParam
❖ @DeleteMapping
Architecture des composants [Link] 164
APPLICATION- MISE EN ŒUVRE DES WEB SERVICES AVEC SPRING REST CONTROLLER
Création d’une API REST avec Spring Boot
GET
Model
Controller
POST
PUT
Service
Client
DELETE
id Nom Mail
1 Mohammed mhd@[Link]
2 Moad moad@[Link]
3 Sana sana@[Link]
…
Architecture des composants [Link] 165
APPLICATION- MISE EN ŒUVRE DES WEB SERVICES AVEC SPRING REST CONTROLLER
❖ Créer un nouveau Projet
Architecture des composants [Link] 166
APPLICATION- MISE EN ŒUVRE DES WEB SERVICES AVEC SPRING REST CONTROLLER
❖ Ajouter les packages « model », « service » et « controller », dans le package
[Link].tp1_Rest
Architecture des composants [Link] 167
APPLICATION- MISE EN ŒUVRE DES WEB SERVICES AVEC SPRING REST CONTROLLER
❖ Ajouter la classe « User » au modèle (model) public class User {
int id;
String nom;
String mail;
public User(int id, String nom, String mail) {
[Link] = id;
[Link] = nom;
[Link] = mail;
}
public int getId() { return id;
}
public void setId(int id) {[Link] = id;
}
public String getNom() {return nom;
}
public void setNom(String nom) {[Link] = nom;
}
public String getMail() {return mail;
}
public void setMail(String mail) { [Link] = mail;
}
}
Architecture des composants [Link] 168
APPLICATION- MISE EN ŒUVRE DES WEB SERVICES AVEC SPRING REST CONTROLLER
public void suppUser(Integer id){
❖ Ajouter la classe « UserService » au metier for(User usr:userList)
if(id==[Link]()) {
(package service) [Link](usr);
}
@Service }
public class UserService { public List<User> getUsers(){
private List<User> userList;
return userList;
public UserService() { }
userList = new ArrayList<>(); }
User user1=new User(1,"Mohammed","mhd@[Link]");
User user2=new User(2,"Moad","moad@[Link]");
User user3=new User(3,"Sana","sana@[Link]");
User user4=new User(4,"Ahlam","ahlam@[Link]");
[Link]([Link](user1,user2,user3,user4));
}
public User getUser(Integer id){
for(User usr:userList)
if(id==[Link]()) {
return usr;
}
return null;
}
Architecture des composants [Link] 169
APPLICATION- MISE EN ŒUVRE DES WEB SERVICES AVEC SPRING REST CONTROLLER
❖ Ajouter la classe « UserService » au metier
(suite)
public String updateUser(int id,User user){
int i=0;
for(User usr:userList) {
if ([Link]() == id) {
[Link](i, user);
return [Link]("l'utilisateur %s est bien modifié !", id);
} else
i++;
}
return [Link]("lutilisateur %s n'existe pas !",id);
}
public String addUser(User user){
[Link](user);
return [Link]("lutilisateur %s est bien ajouté !",[Link]());
}
Architecture des composants [Link] 170
SUITE Ajouter la classe « UserController » au controleur (package controller)
@RestController
public class UserController
{ @PostMapping("/add")
private UserService userService; public String addUtilisateur(@RequestBody User user){
@Autowired return [Link](user);
public UserController(UserService userService) { }
[Link] = userService; @PutMapping("/update/{p}")
} public String UpdateUser(@PathVariable("p") int id,@RequestBody User user){
@GetMapping("/user/{p}") return [Link](id,user);
public User getUser(@PathVariable("p") Integer id){ }
User user=[Link](id);
if(user!=null){
return user; @DeleteMapping("/supp")
} public void SupprimerUser(@RequestParam Integer id){
return null; [Link](id);
} }
@GetMapping("/users")
public List<User> getUsers(){
return [Link]();
}
Architecture des composants [Link] 171
APPLICATION- MISE EN ŒUVRE DES WEB SERVICES AVEC SPRING REST CONTROLLER
❖ Démarrer l’application [
{
❖ Tester la liste des services : Récupération "id": 1,
"nom": "Mohammed",
"mail": "mhd@[Link]"
},
{
"id": 2,
"nom": "Moad",
"mail": "moad@[Link]"
},
{
"id": 3,
"nom": "Sana",
"mail": "sana@[Link]"
},
{
"id": 4,
"nom": "Ahlam",
"mail": "ahlam@[Link]"
}
]
Architecture des composants [Link] 172
APPLICATION- MISE EN ŒUVRE DES WEB SERVICES AVEC SPRING REST CONTROLLER
❖ Démarrer l’application
❖ Récupération et suppression
{
"id": 1,
"nom": "Mohammed",
"mail": "mhd@[Link]"
}
Architecture des composants [Link] 173
APPLICATION- MISE EN ŒUVRE DES WEB SERVICES AVEC SPRING REST CONTROLLER
❖ Démarrer l’application
❖ Ajout
Architecture des composants [Link] 174
APPLICATION- MISE EN ŒUVRE DES WEB SERVICES AVEC SPRING REST CONTROLLER
❖ Démarrer l’application
❖ Mise à jour
Architecture des composants [Link] 175