ホームページ  >  記事  >  Java  >  Java Beans はマップの API を介してインスタンスを呼び出します

Java Beans はマップの API を介してインスタンスを呼び出します

零下一度
零下一度オリジナル
2017-07-20 14:18:531846ブラウズ
1. org.apache.commons.beanutils.BeanMap;
マップの API を通じて Java Bean を呼び出すことができます。

サポートされているいくつかの操作インターフェイス:

  • Object get (Object key)

  • Object put(オブジェクトキー, オブジェクト値)

  • void putAll(Map t)

  • SetentrySet()

  • Collectionvalues()

  • boolean containsKey(オブジェクトキー)

  • ....

例:
//将student的信息拼成字符串,格式:stuname|stuage|stuclass
protected String getLine(Student student) {
           StringBuilder sb = new StringBuilder();
           BeanMap map = new BeanMap(student );
           appStr(sb, map, "stuname");
           appStr(sb, map, "stuage");
           appStr(sb, map, "stuclass");
           return sb.toString();
     }
 
//将teacher的信息拼成字符串,格式:tname|tage|tclass
protected String getLine(Teacher teacher) {
           StringBuilder sb = new StringBuilder();
           BeanMap map = new BeanMap(teacher);
           appStr(sb, map, "tname");
           appStr(sb, map, "tage");
           appStr(sb, map, "tclass");
           return sb.toString();
     }
     
 
//拼字符串公用方法,将不同的对象,比如studengt和teacher的信息通过map传到方法里
protected void appStr(StringBuilder sb, Map<String, Object> map,
                String str) {
           Object value = map.get(str);
           sb.append(newValue).append("|");
     }

注: 上記の例では、

sb.append(student.getStuname() を直接 ) を使用できます。 .append("|").append(student.getStuage()).append("|").append(student.getStuclass);

と文字列を結合していますが、その理由は BeanMap が複数使用されているためだと思います。同時に文字列を結合するメソッドを使用する必要があるオブジェクト (学生、教師など)

パブリック メソッドを抽象化したいので、このように BeanMap をすべて渡す必要はありません。オブジェクトを appStr に渡すだけです。BeanMap オブジェクトを渡すだけです。

以上がJava Beans はマップの API を介してインスタンスを呼び出しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。