TableServiceEntity Clase
- java.
lang. Object - TableEntity
- com.
microsoft. azure. storage. table. TableServiceEntity
- com.
public class TableServiceEntity implements TableEntity
La TableServiceEntity clase representa el tipo de objeto base de una entidad de tabla en el servicio Storage. TableServiceEntity proporciona una implementación base para la TableEntity interfaz que proporciona y métodos que serializan y deserializan de forma predeterminada todas las propiedades a través de la reflexión. Una clase de entidad de tabla puede extender esta clase e invalidar los métodos y para proporcionar lógica de serialización personalizada o más eficaz.
El uso de la reflexión permite serializar y deserializar las subclases de TableServiceEntity sin tener que implementar el código de serialización. Cuando se encuentra un método captador y un método establecedor para un nombre de propiedad y un tipo de datos determinado, se invoca automáticamente el método adecuado para serializar o deserializar los datos. Para aprovechar el código de serialización automática, las clases de entidad de tabla deben proporcionar métodos captadores y establecedores para cada propiedad de la entidad de tabla correspondiente de Microsoft Azure Table Storage. El código de reflexión busca métodos captadores y establecedores en pares del formulario.
y
donde PropertyName es un nombre de propiedad para la entidad de tabla y el tipo es un tipo de Java compatible con el tipo de datos EDM de la propiedad. Consulte la tabla siguiente para obtener un mapa de los tipos de propiedad a sus equivalentes de Java. La StoreAs anotación se puede aplicar con un atributo para especificar un nombre de propiedad para la reflexión en métodos captadores y establecedores que no siguen la convención de nombre de propiedad. Los nombres de método y el atributo de las anotaciones distinguen mayúsculas de minúsculas para buscar coincidencias con los nombres de StoreAs propiedad con reflexión. Use la Ignore anotación para evitar que la reflexión use métodos para la serialización y deserialización automáticas. Tenga en cuenta que los nombres "PartitionKey", "RowKey", "Timestamp" y "Etag" están reservados y se omitirán si se establecen con la StoreAs anotación en una subclase.
En la tabla siguiente se muestran los tipos de datos de propiedad admitidos en el almacenamiento de Microsoft Azure y los tipos de Java correspondientes cuando se deserializan.
Consulte el tema de MSDN Descripción del modelo de datos de Table Service para obtener información general sobre tablas, entidades y propiedades como se usa en el servicio Microsoft Azure Storage.
Para obtener información general sobre los nombres y tipos de datos primitivos de EDM disponibles, consulte el
Sección Tipos de datos primitivos de la información general del protocolo OData.
Resumen del campo
Modificador y tipo | Campo y descripción |
---|---|
String |
etag
Reservado para uso interno. Valor de ETag para la entidad. |
String |
partitionKey
Reservado para uso interno. Valor de la clave de partición en la entidad. |
String |
rowKey
Reservado para uso interno. Valor de la clave de fila en la entidad. |
Date |
timeStamp
Reservado para uso interno. Valor de la marca de tiempo de la entidad. |
Resumen del constructor
Constructor | Description |
---|---|
TableServiceEntity() |
Inicializa una instancia vacía TableServiceEntity . |
TableServiceEntity(String partitionKey, String rowKey) |
Inicializa una nueva instancia de la clase TableServiceEntity con las claves de fila y partición especificadas. |
Resumen del método
Modificador y tipo | Método y descripción |
---|---|
String |
getEtag()
Obtiene el valor ETag que se va a comprobar para la entidad. Este valor se usa para determinar si la entidad de tabla ha cambiado desde que se leyó por última vez desde Microsoft Azure Storage. El cliente no puede actualizar este valor en el servicio. |
String |
getPartitionKey()
Obtiene el valor PartitionKey de la entidad. |
ConcurrentHashMap<Class<?>, HashMap<String, PropertyPair>> |
getReflectedEntityCache()
La caché de entidades reflejada almacena en caché los tipos de entidad conocidos y sus respectivos diccionarios de entidades reflejados cuando las entidades se deserializan y la carga no incluye metadatos JSON. |
String |
getRowKey()
Obtiene el valor RowKey de la entidad. |
Date |
getTimestamp()
Obtiene la marca de tiempo de la entidad. El servidor se encargará de administrar el valor Timestamp, así que no podrá modificarlo. |
boolean |
isReflectedEntityCacheDisabled()
Obtiene un valor que indica si la caché de entidades reflejada está deshabilitada o no. En la mayoría de los escenarios, no se recomienda deshabilitar la caché de entidades reflejadas debido a su efecto en el rendimiento. La caché de entidades reflejada almacena los tipos de entidad conocidos y sus respectivos diccionarios de entidades reflejados. En lugar de usar la reflexión en un tipo de entidad conocido, los valores del diccionario se usan en su lugar. |
void |
readEntity(final HashMap<String, EntityProperty> properties, final OperationContext opContext)
Rellena esta instancia de entidad de tabla mediante la asignación de nombres de propiedad a EntityProperty valores con tipo de datos. Este método invoca readEntityWithReflection(final Object instance, final HashMap<String, EntityProperty> properties, final OperationContext opContext) para rellenar la instancia de entidad de tabla en la que se llama al método mediante reflexión. Las clases de entidad de tabla que se extienden TableServiceEntity pueden aprovechar este comportamiento mediante la implementación de métodos captadores y establecedores para las propiedades concretas de la entidad de tabla en Microsoft Azure Storage que representa la clase . Invalide este método en clases que se extienden TableServiceEntity para invocar código de serialización personalizado. |
void |
readEntityWithReflection(final Object instance, final HashMap<String, EntityProperty> properties, final OperationContext opContext)
Deserializa el mapa de propiedades de la entidad de tabla en la instancia de objeto especificada mediante reflexión. Este método estático toma una instancia de objeto que representa un tipo de entidad de tabla y usa la reflexión en su tipo de clase para buscar métodos para deserializar los datos del mapa de propiedades en la instancia. Cada nombre de propiedad y tipo de datos del mapa de propiedades se compara con los métodos del tipo de clase para un par de métodos captadores y establecedores que se usarán para la serialización y deserialización. La clase se examina para los métodos con nombres que coinciden con el nombre de propiedad con "get" y "set" antepuesto, o con el StoreAs conjunto de anotaciones con el nombre de la propiedad. Los métodos deben tener tipos devueltos o tipos de datos de parámetros que coincidan con el tipo de datos del valor correspondiente EntityProperty . Si se encuentra este par, los datos se copian en el objeto de instancia invocando el método establecedor en la instancia de . Las propiedades que no coinciden con un par de métodos por nombre y tipo de datos no se copian. |
void |
setEtag(final String etag)
Establece el valor de ETag para comprobar la entidad. Este valor se usa para determinar si la entidad de tabla ha cambiado desde que se leyó por última vez desde el almacenamiento de Microsoft Azure. El cliente no puede actualizar este valor en el servicio. |
void |
setPartitionKey(final String partitionKey)
Establece el valor PartitionKey de la entidad. |
void |
setReflectedEntityCacheDisabled(boolean disableReflectedEntityCache)
Establece un valor booleano que representa si la caché de entidades reflejada está deshabilitada o no. En la mayoría de los escenarios, no se recomienda deshabilitar la caché de entidades reflejadas debido a su efecto en el rendimiento. La caché de entidades reflejada almacena los tipos de entidad conocidos y sus respectivos diccionarios de entidades reflejados. En lugar de usar la reflexión en un tipo de entidad conocido, los valores del diccionario se usan en su lugar. |
void |
setRowKey(final String rowKey)
Establece el valor RowKey de la entidad. |
void |
setTimestamp(final Date timeStamp)
Establece el valor de la entidad. Tenga en cuenta que la propiedad timestamp es una propiedad de solo lectura establecida por el servicio. |
HashMap<String, Entity |
writeEntity(final OperationContext opContext)
Devuelve una asignación de nombres de propiedad a EntityProperty valores con tipo de datos creados serializando esta instancia de entidad de tabla. Este método invoca writeEntityWithReflection(final Object instance) para serializar la instancia de entidad de tabla en la que se llama al método mediante la reflexión. Las clases de entidad de tabla que se extienden TableServiceEntity pueden aprovechar este comportamiento mediante la implementación de métodos captadores y establecedores para las propiedades concretas de la entidad de tabla en Microsoft Azure Storage que representa la clase . Tenga en cuenta que los nombres de propiedad "PartitionKey", "RowKey" y "Timestamp" están reservados y se omitirán si se establecen en otros métodos con la StoreAs anotación. Invalide este método en clases que se extienden TableServiceEntity para invocar código de serialización personalizado. |
HashMap<String, Entity |
writeEntityWithReflection(final Object instance)
Serializa los datos de propiedad de una instancia de entidad de tabla en un mapa de propiedades mediante reflexión. Este método estático toma una instancia de objeto que representa un tipo de entidad de tabla y usa la reflexión en su tipo de clase para buscar métodos para serializar los datos de la instancia en el mapa de propiedades. Cada nombre de propiedad y tipo de datos del mapa de propiedades se compara con los métodos del tipo de clase para un par de métodos captadores y establecedores que se usarán para la serialización y deserialización. La clase se examina para los métodos con nombres que coinciden con el nombre de propiedad con "get" y "set" antepuesto, o con el StoreAs conjunto de anotaciones con el nombre de la propiedad. Los métodos deben tener tipos devueltos o tipos de datos de parámetros que coincidan con el tipo de datos del valor correspondiente EntityProperty . Si se encuentra este par, los datos se copian del objeto de instancia invocando el método getter en la instancia. Las propiedades que no tienen un par de métodos con el nombre coincidente y el tipo de datos no se copian. |
Detalles del campo
etag
protected String etag= null
Reservado para uso interno. Valor de ETag para la entidad.
partitionKey
protected String partitionKey= null
Reservado para uso interno. Valor de la clave de partición en la entidad.
rowKey
protected String rowKey= null
Reservado para uso interno. Valor de la clave de fila en la entidad.
timeStamp
protected Date timeStamp= new Date()
Reservado para uso interno. Valor de la marca de tiempo de la entidad.
Detalles del constructor
TableServiceEntity
public TableServiceEntity()
Inicializa una instancia vacía TableServiceEntity .
TableServiceEntity
public TableServiceEntity(String partitionKey, String rowKey)
Inicializa una nueva instancia de la clase TableServiceEntity con las claves de fila y partición especificadas.
Parameters:
String
representa la clave de partición del TableServiceEntity objeto que se va a inicializar.
String
representa la clave de fila del TableServiceEntity objeto que se va a inicializar.
Detalles del método
getEtag
public String getEtag()
Obtiene el valor ETag que se va a comprobar para la entidad. Este valor se usa para determinar si la entidad de tabla ha cambiado desde que se leyó por última vez desde Microsoft Azure Storage. El cliente no puede actualizar este valor en el servicio.
Overrides:
TableServiceEntity.getEtag()Returns:
String
contiene la etiqueta ETag de la entidad.getPartitionKey
public String getPartitionKey()
Obtiene el valor PartitionKey de la entidad.
Overrides:
TableServiceEntity.getPartitionKey()Returns:
String
contiene el valor PartitionKey de la entidad.getReflectedEntityCache
protected static ConcurrentHashMap
La caché de entidades reflejada almacena en caché los tipos de entidad conocidos y sus respectivos diccionarios de entidades reflejados cuando las entidades se deserializan y la carga no incluye metadatos JSON.
Returns:
ConcurrentHashMap<Class<?>, HashMap<String, PropertyPair>>
representa los tipos de entidad conocidos y sus diccionarios de entidades reflejadosgetRowKey
public String getRowKey()
Obtiene el valor RowKey de la entidad.
Overrides:
TableServiceEntity.getRowKey()Returns:
String
contiene el valor RowKey de la entidad.getTimestamp
public Date getTimestamp()
Obtiene la marca de tiempo de la entidad. El servidor se encargará de administrar el valor Timestamp, así que no podrá modificarlo.
Overrides:
TableServiceEntity.getTimestamp()Returns:
java.util.Date
que representa el valor timestamp de la entidad.isReflectedEntityCacheDisabled
public static boolean isReflectedEntityCacheDisabled()
Obtiene un valor que indica si la caché de entidades reflejada está deshabilitada o no. En la mayoría de los escenarios, no se recomienda deshabilitar la caché de entidades reflejadas debido a su efecto en el rendimiento.
La caché de entidades reflejada almacena los tipos de entidad conocidos y sus respectivos diccionarios de entidades reflejados. En lugar de usar la reflexión en un tipo de entidad conocido, los valores del diccionario se usan en su lugar.
Returns:
true
si la caché de entidades reflejada está deshabilitada; de lo contrario, false
.
readEntity
public void readEntity(final HashMap
Rellena esta instancia de entidad de tabla mediante la asignación de nombres de propiedad a EntityProperty valores con tipo de datos.
Este método invoca readEntityWithReflection(final Object instance, final HashMap<String, EntityProperty> properties, final OperationContext opContext) para rellenar la instancia de entidad de tabla en la que se llama al método mediante reflexión. Las clases de entidad de tabla que se extienden TableServiceEntity pueden aprovechar este comportamiento mediante la implementación de métodos captadores y establecedores para las propiedades concretas de la entidad de tabla en Microsoft Azure Storage que representa la clase .
Invalide este método en clases que se extienden TableServiceEntity para invocar código de serialización personalizado.
Overrides:
TableServiceEntity.readEntity(final HashMap<String, EntityProperty> properties, final OperationContext opContext)Parameters:
java.util.HashMap
nombres de String
propiedad para los valores de datos que se van a EntityProperty deserializar y almacenar en esta instancia de entidad de tabla.
Throws:
readEntityWithReflection
public static void readEntityWithReflection(final Object instance, final HashMap
Deserializa el mapa de propiedades de la entidad de tabla en la instancia de objeto especificada mediante reflexión.
Este método estático toma una instancia de objeto que representa un tipo de entidad de tabla y usa la reflexión en su tipo de clase para buscar métodos para deserializar los datos del mapa de propiedades en la instancia.
Cada nombre de propiedad y tipo de datos del mapa de propiedades se compara con los métodos del tipo de clase para un par de métodos captadores y establecedores que se usarán para la serialización y deserialización. La clase se examina para los métodos con nombres que coinciden con el nombre de propiedad con "get" y "set" antepuesto, o con el StoreAs conjunto de anotaciones con el nombre de la propiedad. Los métodos deben tener tipos devueltos o tipos de datos de parámetros que coincidan con el tipo de datos del valor correspondiente EntityProperty . Si se encuentra este par, los datos se copian en el objeto de instancia invocando el método establecedor en la instancia de . Las propiedades que no coinciden con un par de métodos por nombre y tipo de datos no se copian.
Parameters:
Object
a una instancia de una clase que implementa TableEntity para deserializar los datos de entidad de tabla.
java.util.HashMap
que asigna String
nombres de propiedad a EntityProperty objetos que contienen valores de datos con tipo para deserializar en el objeto de parámetro de instancia.
Throws:
setEtag
public void setEtag(final String etag)
Establece el valor de ETag para comprobar la entidad. Este valor se usa para determinar si la entidad de tabla ha cambiado desde que se leyó por última vez desde el almacenamiento de Microsoft Azure. El cliente no puede actualizar este valor en el servicio.
Overrides:
TableServiceEntity.setEtag(final String etag)Parameters:
String
contiene la etiqueta ETag de la entidad.
setPartitionKey
public void setPartitionKey(final String partitionKey)
Establece el valor PartitionKey de la entidad.
Overrides:
TableServiceEntity.setPartitionKey(final String partitionKey)Parameters:
String
contiene el valor PartitionKey de la entidad.
setReflectedEntityCacheDisabled
public static void setReflectedEntityCacheDisabled(boolean disableReflectedEntityCache)
Establece un valor booleano que representa si la caché de entidades reflejada está deshabilitada o no. En la mayoría de los escenarios, no se recomienda deshabilitar la caché de entidades reflejadas debido a su efecto en el rendimiento.
La caché de entidades reflejada almacena los tipos de entidad conocidos y sus respectivos diccionarios de entidades reflejados. En lugar de usar la reflexión en un tipo de entidad conocido, los valores del diccionario se usan en su lugar.
Parameters:
true
para deshabilitar la caché de entidades reflejada; de lo contrario, false
.
setRowKey
public void setRowKey(final String rowKey)
Establece el valor RowKey de la entidad.
Overrides:
TableServiceEntity.setRowKey(final String rowKey)Parameters:
String
contiene el valor RowKey de la entidad.
setTimestamp
public void setTimestamp(final Date timeStamp)
Establece el valor de la entidad. Tenga en cuenta que la propiedad timestamp es una propiedad de solo lectura establecida por el servicio.
Overrides:
TableServiceEntity.setTimestamp(final Date timeStamp)Parameters:
java.util.Date
contiene el timeStamp
valor de la entidad.
writeEntity
public HashMap
Devuelve una asignación de nombres de propiedad a EntityProperty valores con tipo de datos creados serializando esta instancia de entidad de tabla.
Este método invoca writeEntityWithReflection(final Object instance) para serializar la instancia de entidad de tabla en la que se llama al método mediante la reflexión. Las clases de entidad de tabla que se extienden TableServiceEntity pueden aprovechar este comportamiento mediante la implementación de métodos captadores y establecedores para las propiedades concretas de la entidad de tabla en Microsoft Azure Storage que representa la clase . Tenga en cuenta que los nombres de propiedad "PartitionKey", "RowKey" y "Timestamp" están reservados y se omitirán si se establecen en otros métodos con la StoreAs anotación.
Invalide este método en clases que se extienden TableServiceEntity para invocar código de serialización personalizado.
Overrides:
TableServiceEntity.writeEntity(final OperationContext opContext)Parameters:
Returns:
java.util.HashMap
nombres de String
propiedad a EntityProperty valores con tipo de datos que representan las propiedades serializadas desde esta instancia de entidad de tabla.Throws:
writeEntityWithReflection
public static HashMap
Serializa los datos de propiedad de una instancia de entidad de tabla en un mapa de propiedades mediante reflexión.
Este método estático toma una instancia de objeto que representa un tipo de entidad de tabla y usa la reflexión en su tipo de clase para buscar métodos para serializar los datos de la instancia en el mapa de propiedades.
Cada nombre de propiedad y tipo de datos del mapa de propiedades se compara con los métodos del tipo de clase para un par de métodos captadores y establecedores que se usarán para la serialización y deserialización. La clase se examina para los métodos con nombres que coinciden con el nombre de propiedad con "get" y "set" antepuesto, o con el StoreAs conjunto de anotaciones con el nombre de la propiedad. Los métodos deben tener tipos devueltos o tipos de datos de parámetros que coincidan con el tipo de datos del valor correspondiente EntityProperty . Si se encuentra este par, los datos se copian del objeto de instancia invocando el método getter en la instancia. Las propiedades que no tienen un par de métodos con el nombre coincidente y el tipo de datos no se copian.
Parameters:
Object
a una instancia de una clase que implementa TableEntity para serializar los datos de entidad de tabla de .
Returns:
java.util.HashMap
que asigna String
nombres de propiedad a EntityProperty objetos que contienen valores de datos con tipo serializados a partir del objeto de parámetro de instancia.Throws:
Se aplica a
Azure SDK for Java