Maison  >  Article  >  Java  >  Les beans Java appellent des instances via l'API de la carte

Les beans Java appellent des instances via l'API de la carte

零下一度
零下一度original
2017-07-20 14:18:531796parcourir
1. org.apache.commons.beanutils.BeanMap;
permet à un bean java d'être appelé via l'API de la carte,

plusieurs pris en charge Interfaces d'opération :

  • Object get (Object key)

  • Object put (Object key, Object value)

  • void putAll(Map t)

  • Set EntrySet()

  • Valeurs de la collection()

  • boolean containKey(Object key)

  • ....

Par exemple :
//将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("|");
     }

Remarque : dans l'exemple ci-dessus, bien que vous puissiez utiliser

sb.append(student.getStuname()).append("|").append(student.getStuage()).append("|").append(student.getStuclass);

pour épisser des chaînes, mais j'ai utilisé BeanMap. Je pense que la raison est qu'il y a plusieurs objets (tels qu'un étudiant, un enseignant, etc.) qui doivent utiliser la méthode d'épissage de chaînes en même temps

veut. abstrait la méthode publique, donc BeanMap est utilisé, il n'est donc pas nécessaire de transmettre chaque objet à appStr, un seul objet BeanMap est requis.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn