Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment enregistrer des données dans une page thymeleaf dans plusieurs lignes sql

Vous utilisez la soumission de formulaire pour enregistrer des données complexes, ce qui est très compliqué au lieu d'écrire du script java et d'enregistrer vos informations dans un objet javascript et d'envoyer une chaîne json au contrôleur pour l'enregistrer avec la liste.

Pour l'instant, avec votre implémentation, une solution hacky simple serait celle-ci.

1) Implémentation de saveTimeTable avec ce qui suit

@RequestMapping(value="/timeTableMapping/saveAll",method=RequestMethod.POST)chaîne publique 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";
}