Ich habe mir etwas Nützliches ausgedacht und es als Memorandum verwendet
ErrorMessage.java
package listTest;
import java.util.ArrayList;
import java.util.Collection;
import java.util.LinkedList;
import java.util.List;
import java.util.stream.Collectors;
public class ErrorMessage {
public static void main(String[] args) {
//Angenommen, eine Liste von Modellen wird eingegeben
List<Model> models = new ArrayList<>();
//Erhalten Sie alle Arten von erkannten Fehlermeldungen
List<String> eMsgCodes = models.stream()
.map(ErrorMessage::validationLogic)
.flatMap(Collection::stream)
.distinct()
.collect(Collectors.toList());
//Geben Sie den Nachrichtencode aus, indem Sie ihn aus einer Einstellungsdatei konvertieren
eMsgCodes.forEach(ErrorMessage::viewErrorMessage);
}
/**
*Überprüfen Sie den Eingabewert für jedes Element.
* <p>
*Einzigartiges Urteil, das nicht mit Anmerkungen usw. erscheint..
*
* @param model Das zu überprüfende Modell
* @return Liste der Fehlerformulierungen
*/
private static List<String> validationLogic(Model model) {
List<String> errorMessages = new LinkedList<>();
//Fehler mit Nicht-ID-ID
if (0 != model.getId()) {
errorMessages.add("MessageCode.001");
}
//Fehler, dessen Name nicht 〇〇 ist
if (!"???".equals(model.getName())) {
errorMessages.add("MessageCode.002");
}
//Fehler, dass die Adresse nicht 〇〇 ist
if (!"???".equals(model.getAddress())) {
errorMessages.add("MessageCode.003");
}
return errorMessages;
}
/**
*Konvertieren Sie den Nachrichtencode, um die Nachricht und die Ausgabe anzuzeigen.
* <p>
*Zeigen Sie den entsprechenden Wortlaut aus der Einstellungsdatei auf dem Bildschirm an.
*
* @param msgCode Nachrichtencode
* @siehe Konfigurationsdatei
*/
private static void viewErrorMessage(String msgCode) {
System.out.println(msgCode);
}
}
class Model {
private int id;
private String name;
private String address;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
}
Hauptsächlich hier
Hier.java
//Erhalten Sie alle Arten von erkannten Fehlermeldungen
List<String> eMsgCodes = models.stream()
.map(ErrorMessage::validationLogic)
.flatMap(Collection::stream)
.distinct()
.collect(Collectors.toList());
Wenn Sie wissen, dass nach der Überprüfung mehrere Fehlermeldungen angezeigt werden In logischer Hinsicht ist das Argument Modell und der Rückgabewert List. Es wird alles verarbeitet, indem es gestreamt und Nebel beseitigt wird.
Es fühlt sich ziemlich gut an
Recommended Posts