Como mostrado abaixo:
pacote com.iqbon.spider.util; importar java.lang.reflect.field; importar java.lang.reflect.invocationTargeTexception; importar java.util.date; importar org.apache.commons.beanutils.beanutils; importação com.mongodb.basicdbobject; importação com.mongodb.dbobject; classe pública BEANUTIL { / ** * Converta o objeto de bean de entidade em dbObject * @param bean * @return * @throws ilegalargumentException * @throws ilegalaccessException * / public static <T> dbObject Bean2dBobject (t Bean) ilegalArgumentExceptExcentCondExcept. } DbObject dbObject = new BasicDBObject (); // Obtenha todos os domínios na classe correspondente do campo de objeto [] campos = bean.getclass (). GetDecLaredFields (); para (campo de campo: campos) {// obtenha o nome do atributo string varname = field.getName (); // Modificar permissões de controle de acesso booleano accessflag = field.isaccessible (); if (! accessflag) {field.setAccessible (true); } Objeto param = field.get (bean); if (param == null) {continua; } else if (param instanceof integer) {// julgue o tipo de variável int value = ((integer) param) .intValue (); dbObject.put (Varname, valor); } else if (param instanceof string) {string value = (string) param; dbObject.put (Varname, valor); } else if (param instanceof duplo) {duplo value = ((duplo) param) .doubleValue (); dbObject.put (Varname, valor); } else if (param instanceof float) {value float = ((float) param) .floatValue (); dbObject.put (Varname, valor); } else if (param instanceof long) {long value = ((long) param) .longValue (); dbObject.put (Varname, valor); } else if (param instanceof boolean) {value boolean = ((boolean) param) .BooleanValue (); dbObject.put (Varname, valor); } else if (param instanceOf date) {date value = (date) param; dbObject.put (Varname, valor); } // restaurar o campo de permissão de controle de acesso.SetAccessible (AccessFlag); } retornar dbObject; } / ** * Converta dbObject em objeto de feijão * @param dbObject * @param bean * @return * @Throws IllegalAccessException * @Throws InvocationTargeTexception * @THOWSUCHMETHODODEXCECTIONS * / public static <T> t dbobject2Bean (DbobjecTons, DBOBSTONSTUSTO, BENSTATION) NoschmethodException {if (bean == null) {return null; } Campo [] campos = bean.getclass (). GetDecLaredFields (); for (campo de campo: campos) {string varname = field.getName (); Objeto objeto = dbObject.get (Varname); if (object! = null) {beanutils.setProperty (bean, varname, objeto); }} retornar Bean; }}O exposto acima é o conteúdo completo do método (recomendado) do objeto Bean e DBObject ao operar o MongoDB pelo editor. Espero que todos possam apoiar mais wulin.com ~