¿Hay alguna manera de hacer que groovy ignore los atributos adicionales en un mapa durante la creación de instancias de objetos? Ejemplo:Groovy: Ignora atributos adicionales en un mapa durante la instanciación de objetos
class Banana{
String name
}
def params = [name:'someGuy', age:13]
new Banana(params)
En este ejemplo, maravilloso lanza un n tal propiedad: Excepción de edad (obviamente porque la edad no está definido en la clase Plátano Sin recurrir a mapear manualmente sólo los atributos deseados del mapa para el constructor. de la clase de plátano, ¿hay una manera de contar plátano hacer caso omiso de los atributos extra?
noté que Grails clases de dominio no sufren de este problema, y me gustaría el mismo comportamiento aquí!
Gracias por su ayuda y consejo!
Obviamente, usted tiene que asegurarse de que su mapa params no contiene las claves '' class' o metaClass', o Excepciones/rareza se producirán ;-) –
Gracias - Me gusta este característica de Grails, esperaba que no fuera a través de trucos ingeniosos, sino que era una función de idioma en su lugar. Oh bien. Sin embargo, su solución debería hacer el truco, ¡gracias! – Quad64Bit