Ich habe eine Einheit:Kotlin und @Valid Frühling Anmerkung
class SomeInfo(
@NotNull @Pattern(regexp = Constraints.EMAIL_REGEX) var value: String) {
var id: Long? = null
}
und Controller-Methode:
@RequestMapping(value = "/some-info", method = RequestMethod.POST)
public Id create(@Valid @RequestBody SomeInfo someInfo) {
...
}
@Valid
Annotation funktioniert nicht.
Es scheint Frühling einen Standard-parameterlosen Konstruktor und Phantasie Code oben wird in etwas hässlich (aber funktioniert) wie folgt benötigt:
class SomeInfo() {
constructor(value: String) {
this.value = value
}
@NotNull @Pattern(regexp = Constraints.EMAIL_REGEX)
lateinit var value: String
var id: Long? = null
}
Jede gute Praxis ist es weniger wortreich zu machen?
Danke.
Sie sagen, Spring benötigt einen parameterlosen Konstruktor, aber der Arbeitscode hat immer noch nur einen Konstruktor für einen Parameter. – Michael
Ja, du hast Recht. Bearbeitet. – user2138356