spring自定義標籤

2021-08-07 08:32:14 字數 1785 閱讀 7041

如何將自定義的配置標籤化是個比較通用的問題,spring已經很好的幫我們設計完成,只需要我們去實現。將繁瑣的配置通過xml配置,spring自動轉換成bean,整個過程比較合理。

1.建立乙個需要擴充套件的元件

package com.bean;

public class user

public void setusername(string username)

public string getemail()

public void setemail(string email)

public string getaddress()

public void setaddress(string address)

}

2.定義乙個xsd檔案描述元件內容

spring-user.xsd

<?xml version="1.0" encoding="utf-8"?>

3.實現beandefinitionparser介面,解析xsd檔案中的定義和元件定義

package com.parse;

import com.bean.user;

import org.springframework.beans.factory.support.beandefinitionbuilder;

import org.springframework.beans.factory.xml.abstractsinglebeandefinitionparser;

import org.springframework.util.stringutils;

import org.w3c.dom.element;

public class userdefinitionparser extends abstractsinglebeandefinitionparser

@override

protected void doparse(element element, beandefinitionbuilder bean)

if (stringutils.hastext(email))

if (stringutils.hastext(address))

}}

4.建立handler檔案,擴充套件自namespacehandlersupport,將元件註冊到spring容器

package com.tag;

import com.parse.userdefinitionparser;

import org.springframework.beans.factory.xml.namespacehandlersupport;

public class usernamespacehandler extends namespacehandlersupport

}

5.編寫spring.handlers和spring.schemas對映檔案

http\:
6.測試

package com.test;

import com.bean.user;

public class springtest

}

執行輸出lcq

Spring的自定義標籤

在com.test.beans下建立user類 package com.test.beans public class user public user string username,string email public string getusername public void setuse...

spring 自定義標籤實現

參考資料 dubbo對spring自定義標籤的擴充套件的實現 spring官方文件 42.1中,介紹了如何自定義spring標籤,步驟如下 1 編寫乙個xml schema描述您的自定義元素 2 編寫自定義命名空間處理程式實現,實現namespackhandler介面 3 編寫乙個或多個自定義的be...

Spring的自定義標籤

spring為自定義xml標籤載入提供了擴充套件。使用者可自定義標籤並註冊到spring的bean容器中。實現較為複雜的bean載入解析。我們認為 xml schema 很快會在大部分網路應用程式中取代 dtd。理由如下 xsd schema xmlns xmlns xsd targetnamesp...