في المشاريع التي تستخدم إطار عمل springMVC ، غالبًا ما تواجه البيانات التي تكون أنواع البيانات التي تكون تاريخها أو عدد صحيح أو مزدوج وما إلى ذلك ، يجب أن تكون مرتبطة بكيان وحدة التحكم ، أو يحتاج وحدة التحكم إلى قبول هذه البيانات. إذا لم تتم معالجة هذا النوع من أنواع البيانات ، فلن يتم ربطه.
هنا يمكننا استخدام التعليق التوضيحي @initbinder لحل هذه المشكلات ، بحيث يقوم SpringMVC بتسجيل هؤلاء المحررين قبل ربط النموذج. بشكل عام ، يتم تضمين هذه الطرق في Basecontroller. تحتاج وحدة التحكم التي تحتاج إلى إجراء مثل هذا التحويل فقط إلى ورث Basecontroller. في الواقع ، يوفر Spring العديد من فئات التنفيذ ، مثل CustomDateEditor ، و CustomBooleAneditor ، و CustomNumbereditor ، وما إلى ذلك ، والتي تكفي بشكل أساسي.
العرض التوضيحي كما يلي:
الفئة العامة basecontroller {initBinder المحمية void initbinder (WebDatabinder Binder) {binder.registerCustomeditor (date.class ، new MyDateeditor ()) ؛ Binder.registerCustomeditor (double.class ، new Doubleeditor ()) ؛ Binder.registerCustomEditor (Integer.class ، new Integereditor ()) ؛ } الفئة الخاصة myDateEditor يمتد propertyedItorSupport {Override public void setastext (نص سلسلة) يلقي alfortleargumentException {simpledateformat format = new SimpledateFormat ("Yyyy-MM-DD HH: MM: SS: SS") ؛ تاريخ التاريخ = فارغ ؛ حاول {date = format.parse (text) ؛ } catch (parseException e) {format = new SimplEdateFormat ("yyyy-mm-dd") ؛ حاول {date = format.parse (text) ؛ } catch (parseException e1) {}} setValue (date) ؛ }} الفئة العامة DoubleDitor يمتد PropertiesEditor {Override public void setastext (نص سلسلة) يلقي alfictalargumentexception {if (text == null || text.equals ("")) {text = "0" ؛ } setValue (double.parsedouble (text)) ؛ } Override public string getastext () {return getValue (). toString () ؛ }} الفئة العامة integereditor يمتد PropertiesEditor {Override public void setastext (نص سلسلة) يلقي alfictalargumentException {if (text == null || text.equals ("")) {text = "0" ؛ } setValue (integer.parseint (text)) ؛ } Override public string getastext () {return getValue (). toString () ؛ }}}ما سبق هو كل محتوى هذه المقالة. آمل أن يكون ذلك مفيدًا لتعلم الجميع وآمل أن يدعم الجميع wulin.com أكثر.