• Spring常用的接口和类(三)


    一、CustomEditorConfigurer类

         CustomEditorConfigurer可以读取实现java.beans.PropertyEditor接口的类,将字符串转为指定的类型。更方便的可以使用PropertyEditorSupport。PropertyEditorSupport实现PropertyEditor接口,必须重新定义setAsText。

    public class Hello {
        private String message;
        private User user;
        
        public String getMessage() {
            return message;
        }
        public void setMessage(String message) {
            this.message = message;
        }
        public User getUser() {
            return user;
        }
        public void setUser(User user) {
            this.user = user;
        }
    }

        自定义属性编辑器继承PropertyEditorSupport类,重写setAsText方法。

    public class UserEditor extends PropertyEditorSupport{
        @Override
        public void setAsText(String text) throws IllegalArgumentException {
            //类型为User的变量声明了自定义属性编辑器,其值规定为逗号分割的字符串
            String[] arr = text.split(",");
            Integer age = new Integer(arr[1]);
            
            User user = new User();
            user.setName(arr[0]);
            user.setAge(age);
            
            setValue(user);
        }
    }

        bean配置

    <bean id="configBean" 
    class="org.springframework.beans.factory.config.CustomEditorConfigurer"> 
        <property name="customEditors">
            <map>
                <!-- 类型为User的变量都通过UserEditor间接设值 -->
                <entry key="User">
                    <bean id="userEditor" class="UserEditor"/>
                </entry>
            </map>   
        </property>
    </bean> 
    
    <bean id="hello" class="Hello"> 
        <property name="message" value="hello" /> 
        <property name="user" value="chenjumin,20"/><!-- 类型为User的变量声明了自定义属性编辑器,其值规定为逗号分割的字符串 --> 
    </bean>
  • 相关阅读:
    微信消息推送和支付宝支付
    django rest framework
    Redis
    flask_migrate
    flask 学习
    windowsserver补丁
    mysql 8.0.23密码更新方法
    交换机配置实例
    爱国论坛OPENWRT
    openwrt资料
  • 原文地址:https://www.cnblogs.com/damowang/p/4305166.html
Copyright © 2020-2023  润新知