Spring 屬性編輯器

2021-10-03 06:10:44 字數 1863 閱讀 5580

customeditorconfigurer

customeditorconfigurer是乙個beanfactorypostprocessor,呼叫postprocessbeanfactory註冊自定義屬性編輯器。可以配置自己的自定義屬性編輯器。

自定義編輯器擴充套件propertyeditorsupport,自定義屬性編輯器登記員擴充套件propertyeditorregistrar,配置到customeditorconfigurer裡屬性編輯器會自動註冊到spring容器裡。

@nullable

private propertyeditorregistrar propertyeditorregistrars;

@nullable

private map, class<? extends propertyeditor>> customeditors;

public void postprocessbeanfactory(configurablelistablebeanfactory beanfactory) throws bean***ception 。預設情況下,不註冊這些編輯器是因為它們通常不適合資料繫結。當然,在任何情況下,您都可以通過單獨註冊。

registrysupport.useconfi**alueeditors();

// 屬性編輯器登記員

if (!this.propertyeditorregistrars.isempty()) {

for (propertyeditorregistrar registrar :this.propertyeditorregistrars) {

try {

// 註冊屬性編輯器

registrar.registercustomeditors(registry);

catch (beancreationexception ex) {

throwable rootcause = ex.getmostspecificcause();

if (rootcause instanceof beancurrentlyincreationexception) {

beancreationexception bce = (beancreationexception) rootcause;

string bcebeanname = bce.getbeanname();

if (bcebeanname != null && iscurrentlyincreation(bcebeanname)) {

if (logger.isdebugenabled()) {

logger.debug("propertyeditorregistrar [" + registrar.getclass().getname() +

"] failed because it tried to obtain currently created bean '" +

ex.getbeanname() + "': " + ex.getmessage());

onsuppressedexception(ex);

continue;

throw ex;

// 自定義屬性編輯器

if (!this.customeditors.isempty()) {

this.customeditors.foreach((requiredtype, editorclass) ->

registry.registercustomeditor(requiredtype, beanutils.instantiateclass(editorclass)));

編輯器常用屬性總結

contenttextmenu string name,bool isvalidate,int priority 右鍵指令碼直接執行方法 menuitem 編輯器面板擴充套件 hierarchy面板路徑為gameobject project面板路徑為assets system.attributeus...

Designer屬性編輯器簡介

objectname,控制項物件名稱。geometry,相對座標系。sizepolicy,控制項大小策略。minimumsize,最小寬度 高度。maximumsize,最大寬度 高度。如果想讓視窗或控制項的大小固定,則可以將minimumsize和maximumsize這兩個屬性設定成一樣的數值。...

自定製vim編輯器屬性

開啟使用者主目錄下.vimrc 檔案,如若使用者名為book,則開啟方式為 vi home book vimrc 注意,以 打頭的檔名為隱藏檔案,若該目錄下不存在該檔案,則自己建立乙個。然後往.vimrc檔案中,新增如下資訊,以後內容為注釋 set cindent shiftwidth 4 設定c語...