1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
package eut.web;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import eut.metier.IMetier;
import java.util.ArrayList;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.multiaction.MultiActionController;
public class MyMultiActionController extends MultiActionController {
// couche métier
IMetier metier;
public IMetier getMetier() {
return metier;
}
public void setMetier(IMetier metier) {
this.metier = metier;
}
// liste des noms
public ModelAndView list(HttpServletRequest request, HttpServletResponse response) {
// on demande les noms à la couche [métier]
List noms = metier.getAll();
// on les met dans le modèle de la vue
Map modèle = new HashMap();
modèle.put("noms", noms);
// on rend le nom de la vue et son modèle
return new ModelAndView("list", modèle);
}
// supprimer des noms
public ModelAndView delete(HttpServletRequest request, HttpServletResponse response) {
// liste des noms sélectionné dans la liste
String[] noms = request.getParameterValues("noms");
// on demande à la couche [métier] de les supprimer de la liste existante
metier.delete(Arrays.asList(noms));
// on rend le nom de la vue et son modèle
return list(request,response);
}
// ajouter des noms
public ModelAndView add(HttpServletRequest request, HttpServletResponse response) {
// chaîne des noms à ajouter
String nouveaux = request.getParameter("nouveaux");
// ces noms sont mis dans un tableau
String[] nouveauxNoms = nouveaux.split("\r\n");
// on crée la liste des noms à ajouter
ArrayList alNouveauxNoms = new ArrayList();
String nouveauNom;
for (int i = 0; i < nouveauxNoms.length; i++) {
// on ne garde le nom que s'il est non vide
nouveauNom = nouveauxNoms[i].trim();
if (nouveauNom.length() != 0) {
alNouveauxNoms.add(nouveauNom);
}
}
// on demande à la couche [métier] de les ajouter à la liste existante
if (alNouveauxNoms.size() != 0) {
metier.add(alNouveauxNoms);
}
// on rend le nom de la vue et son modèle
return list(request, response);
}
} |
Partager