allmänhet klassificerar CancerTypePropertyEditor fördjupa PropertyEditorSupport {
privat CancerTypeDAO dao;
offentliga CancerTypePropertyEditor (den CancerTypeDAO daoen, klassificerar collectionType) {
toppet (collectionType);
this.dao = dao;
}
@Override
offentlig utan laga kraft setAsText (stränga text), kastar IllegalArgumentException {
Anmärka obj = getValue ();
Lista listar = (lista), obj;
för (stränga stren: text.split (”,”)){
list.add (dao.retrieveCancerType (Long.valueOf (str)));
}
}
@Override
allmänhet stränger getAsText () {
// den TODO Auto-frambragda metoden stöter
återgång super.getAsText ();
}
}
I kontrollant:
@Override
skyddad utan laga kraft initBinder (den HttpServletRequest förfråganen,
Undantag för kast för ServletRequestDataBinder limbindning) {
super.initBinder (förfrågan, limbindning);
binder.registerCustomEditor (List.class, ”cancerTypes”,
nya CancerTypePropertyEditor (getCancerTypeDao (),
List.class)); / nya CancerTypePropertyEditor ());
}
I CancerType POJO (ignorera den confusing variabeln som namnger):
@Override
offentliga boolean jämliken (anmärka anObject) {
om (ogiltig anObject==) {
gå falskt tillbaka;
} annars, om (denna ==anObject) {
återgångt true;
} annars, om (anObjectinstanceof CancerType) {
final aCountry CancerType = (CancerType) anObject;
Lång aCountryId = aCountry.getId ();
om (aCountryId! = ogiltigt) {
återgång aCountry.getId () .equals (ID);
}
}
återgångt falskt;
}
Märka:
|