मैं एक समापन बिंदु लिखने की कोशिश कर रहा हूं जो बैकएंड में वैकल्पिक सॉर्टर्स के उपयोग की अनुमति देता है।
उदाहरण के लिए, मेरे पास एक सॉर्टर है जो मुझे सूची में तत्वों को क्रमबद्ध करने की अनुमति देता है - जो कि मेरे समापन बिंदु के नियंत्रक रिटर्न - अपनी निर्माण तिथि के आधार पर है। यदि संबंधित नियंत्रक पैरामीटर सत्य है तो तत्वों को नए से शुरू किया जाता है और सबसे पुराने की ओर ले जाया जाता है। यदि संबंधित पैरामीटर गलत है, तो इसके विपरीत।
यह एक स्प्रिंग बूट प्रोजेक्ट है।
मैं सोच रहा था कि क्या इसे प्राप्त करने के लिए अधिक वसंत-उपयुक्त तरीका है?
यह मेरा नियंत्रक है:
@RestController
public class StudentsController{
@Autowired
private GradeBook yearlyGrades;
@GetMapping(/successful)
public List<Student> getSuccessfulStudents(
@RequestParam(name = startDate) Instant startDate,
@RequestParam(name = endDate) Instant endDate,
@RequestParam(defaultValue = false, required = false) boolean sortStartingFromHighestGrade,
@RequestParam(defaultValue = false, required = false) boolean sortStartingFromEarliestDate) {
return this.yearlyGrades.getSuccessfulStudents(startDate, endDate,
sortStartingFromHighestGrade,
sortStartingFromEarliestDate);
}
}
पिछले दो मापदंडों के सही / गलत मूल्य पर निर्भर करता है sortStartingFromHighestGrade
तथा sortStartingFromEarliestDate
, विभिन्न प्रसंस्करण सेवा वर्ग में पृष्ठभूमि में होता है।