再看看BeanUtils的静态(类)方法populate是怎么处理的: // Loop through the property name/value pairs to be set Iterator names = properties.keySet().iterator(); while (names.hasNext()) {
// Identify the property name and value(s) to be assigned String name = (String) names.next(); if (name == null) { continue; } Object value = properties.get(name);
// Perform the assignment for this property setProperty(bean, name, value);
使用方法是: if (log.isInfoEnabled()) { log.Info("some information."); } Logging把消息分为6种级别,debug,error,fatal,info,trace,warn。比如,你想记录一条消息,它只是为了给用户一个警告,则可以使用warn。为什么在每个log.Info()前做一次判定呢?难道假如log级别不答应Info,log.Info()仍然能Info吗?当然不是。它的作用是提高效率。
比如有个消息是计算前一万个自然数的和(这种消息可能少见)。用直接log.Info() int sum=0; for(int i=0;i<10000;i++){ sum+=i; } log.Info("the sum of form 1 to 10000 is : "_sum); 假如log.Info是不答应的,那求10000个数的和就白求的。当然假如你的计算机很快或和高斯一样聪明,直接log.Info()也每什么问题。