il codice categoria pubblico CancerTypePropertyEditor estende PropertyEditorSupport {
dao riservato di CancerTypeDAO;
CancerTypePropertyEditor pubblico (dao di CancerTypeDAO, collectionType del codice categoria) {
eccellente (collectionType);
this.dao = dao;
}
@Override
il setAsText vuoto del pubblico (testo della stringa) getta IllegalArgumentException {
Obj = getValue dell'oggetto ();
Lista della lista = obj (della lista);
per (streptococco della stringa: text.split (“, ")) {
list.add (dao.retrieveCancerType (Long.valueOf (streptococco)));
}
}
@Override
getAsText pubblico della stringa () {
Albero mozzo di metodo Auto-generato TODO di //
super.getAsText di ritorno ();
}
}
In regolatore:
@Override
initBinder vuoto protettivo (richiesta di HttpServletRequest,
Eccezione dei tiri del raccoglitore di ServletRequestDataBinder) {
super.initBinder (richiesta, raccoglitore);
binder.registerCustomEditor (List.class, “cancerTypes„,
nuovo CancerTypePropertyEditor (getCancerTypeDao (),
List.class)); / nuovo CancerTypePropertyEditor ());
}
In CancerType POJO (ignorare la variabile confusionaria che chiama):
@Override
uguali booleani pubblici (anObject dell'oggetto) {
se (posizione di segnale minimo del == del anObject) {
falso di ritorno;
} altrimenti se (questo anObject del ==) {
di ritorno allineare;
} altrimenti se (instanceof CancerType del anObject) {
CancerType finale aCountry = anObject (di CancerType);
aCountryId lungo = aCountry.getId ();
se (aCountryId! = posizione di segnale minimo) {
aCountry.getId di ritorno () .equals (identificazione);
}
}
falso di ritorno;
}
La modifica:
|