[Java] L'histoire d'une déclaration de commutation vraiment effrayante

introduction

Il y a longtemps, j'ai résumé l'histoire lorsque j'ai raté la déclaration de commutation. C'est une histoire très embarrassante, mais j'ai rédigé un article pour éviter que des accidents similaires ne se reproduisent.

1. État initial

TestServlet.java


@WebServlet("/TestServlet")
public class TestServlet extends HttpServlet {

	private static final long serialVersionUID = 1L;

	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

		//Paramètre de demande"id"Obtenez la valeur de.
		int id = Integer.parseInt(request.getParameter("id"));

		// "id"Les processus sont distribués en fonction de la valeur de.
		switch(id) {
		case 1:
			//Processus 1-A
			break;
		case 2:
			//Processus 2-A
			break;
		case 3:
			//Processus 3-A
			break;
		default:
			//Traitement par défaut
			break;
		}
		...
	}
}

2. Rénovation grâce à des fonctions supplémentaires

TestServlet.java


@WebServlet("/TestServlet")
public class TestServlet extends HttpServlet {

	private static final long serialVersionUID = 1L;

	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

		//Paramètre de demande"id"Obtenez la valeur de.
		int id = Integer.parseInt(request.getParameter("id"));

		// "id"Les processus sont distribués en fonction de la valeur de.
		switch(id) {
		case 1:
			//Processus 1-A
			//Processus 1-B
			//Processus 1-C
			break;
		case 2:
			//Processus 2-A
			//Processus 2-B
			//Processus 3-C (★ J'ai effacé la pause immédiatement après cela...)
		case 3:
			//Processus 3-A
			//Processus 3-B
			//Processus 3-C
			break;
		default:
			//Traitement par défaut
			break;
		}
		...
	}
}

3. L'accident s'est produit

Valeur de l'identifiant du paramètre Résultat de traitement attendu Résultat réel du traitement
1 X X
2 Y Pas Y
3 Z Z
Autre α α

4. Raison de l'accident

5. Que faire après l'accident

URL de référence

Recommended Posts

[Java] L'histoire d'une déclaration de commutation vraiment effrayante
Instruction de commutation Java
instruction switch
[Java] Énumération des branches avec instruction switch
Java, instruction if / instruction switch à partir du débutant
Histoire statique Java
ClassCastException vraiment effrayant
L'histoire de l'initialiseur Java
Java pour instruction
Histoire générique Java
Instruction de commutation Java et pause, Kotlin lorsque l'expression ...
[Java] pour instruction / étendu pour instruction
Changer java avec direnv
spécification de plage d'instruction switch
(Mémo) Java pour instruction
Histoire de support Java 9+ de Lombok
Étude de l'instruction Java-Part 11-switch
[Java] Aizu Online Judge's story 2
[Java] Histoire du juge Aizu Online 1
[Swift] instruction switch utilisant tapple
Instructions Java if et switch
Instruction pratique de base de la programmation Java
☾ Instruction Java / Repeat et instruction de contrôle de répétition
Instruction de base de la programmation Java Practice-Switch
Comprenons l'instruction switch!
Affichage saisonnier avec commutateur Java
Histoire de remplacement C # et Java
Une histoire que j'ai finalement comprise Java pour une déclaration en tant que non-ingénieur