Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So speichern Sie Daten auf einer Thymeleaf-Seite in mehreren SQL-Zeilen

Sie verwenden die Formularübermittlung zum Speichern komplexer Daten, was viel komplizierter ist, anstatt Java-Skript zu schreiben und Ihre Informationen in einem Javascript-Objekt zu speichern und eine JSON-Zeichenfolge zum Speichern mit der Liste an den Controller zu senden.

Für den Moment mit Ihrer Implementierung wäre dies eine einfache Hacky-Lösung.

1) saveTimeTable-Implementierung mit folgendem

@RequestMapping(value="/timeTableMapping/saveAll",method=RequestMethod.POST)public String saveTimeTable(@ModelAttribute("timeTableMapping") TimeTableMapping timeTableMapping){

String[] dayArray = timeTableMapping.getDay().split(",");
String[] subArray = timeTableMapping.getSubject_code().split(",");  


List<TimeTableMapping> tempList = new ArrayList<>();
for(int i = 0 ; i < dayArray.length; i++) {
    TimeTableMapping tempTimeTable = new TimeTableMapping();
    tempTimeTable.setTime_table_code(timeTableMapping.getTime_table_code());        
    tempTimeTable.setDay(dayArray[i]);
    tempTimeTable.setSubject_code(subArray[i]);
    tempTimeTable.setStart(timeTableMapping.getStart());
    tempTimeTable.setEnd(timeTableMapping.getEnd());
    tempList.add(tempTimeTable);
}   
timeTableMappingDAO.saveAll(tempList);
    return  "redirect:/timeTableMapping";
}