Compartilhar via


TableEntity Interface

public interface TableEntity

Uma interface necessária para tipos de entidade de tabela. A TableEntity interface declara os métodos getter e setter para as propriedades comuns da entidade e os métodos para serialização e desserialização de todas as propriedades de entidade usando um mapa de propriedades. Crie classes implementando TableEntity para personalizar o armazenamento de propriedades, a recuperação, a serialização e a desserialização e para fornecer lógica personalizada adicional para uma entidade de tabela.

A biblioteca de clientes de armazenamento inclui duas implementações de TableEntity que fornecem acesso e serialização de propriedade simples:

DynamicTableEntityTableEntity implementa e fornece um mapa de propriedades simples para armazenar e recuperar propriedades. Use um DynamicTableEntity para acesso simples às propriedades de entidade quando apenas um subconjunto de propriedades for retornado (por exemplo, por uma cláusula select em uma consulta) ou para quando sua consulta puder retornar vários tipos de entidade com propriedades diferentes. Você também pode usar este tipo para executar atualizações da tabela em massa de entidades heterogêneas sem perder informações de propriedade.

TableServiceEntity é uma implementação de TableEntity que usa serialização baseada em reflexão e comportamento de desserialização em seus métodos e . TableServiceEntityClasses derivadas de com métodos que seguem uma convenção para tipos e nomenclatura são serializadas e desserializadas automaticamente.

Qualquer classe que implementa pode aproveitar o comportamento automático de serialização e desserialização baseado em reflexão em TableServiceEntity invocando os métodos TableEntity estáticos em e em . A classe deve fornecer métodos que seguem o tipo e a convenção de nomenclatura a serem serializados e desserializados automaticamente. Quando um método getter e um método setter são encontrados para um determinado nome de propriedade e tipo de dados, o método apropriado é invocado automaticamente para serializar ou desserializar os dados. O código de reflexão procura métodos getter e setter em pares do formulário

e

em que PropertyName é um nome de propriedade para a entidade de tabela e type é um tipo Java compatível com o tipo de dados EDM da propriedade. Consulte a tabela na descrição da classe para TableServiceEntity obter um mapa de tipos de propriedade para seus equivalentes java. A StoreAs anotação pode ser aplicada com um atributo para especificar um nome de propriedade para reflexão nos métodos getter e setter que não seguem a convenção de nome da propriedade. Os nomes de método e o atributo de StoreAs anotações diferenciam maiúsculas de minúsculas para correspondência de nomes de propriedade com reflexão. Use a Ignore anotação para impedir que métodos sejam usados pela reflexão para serialização e desserialização automáticas. Observe que os nomes "PartitionKey", "RowKey", "Timestamp" e "Etag" são reservados e serão ignorados se definidos com a StoreAs anotação em uma subclasse que usa os métodos de reflexão.

Resumo do método

Modificador e tipo Método e descrição
String getEtag()

Obtém o valor ETag a ser verificado para a entidade. Esse valor é usado para determinar se a entidade de tabela foi alterada desde a última leitura do armazenamento do Microsoft Azure. O cliente não pode atualizar esse valor no serviço.

String getPartitionKey()

Obtém o valor PartitionKey da entidade.

String getRowKey()

Obtém o valor RowKey da entidade.

Date getTimestamp()

Obtém o carimbo de data/hora da entidade. O servidor gerencia o valor de Timestamp, que não pode ser modificado.

void readEntity(HashMap<String, EntityProperty> properties, OperationContext opContext)

Preenche uma instância do objeto que está implementando TableEntity usando o parâmetro de propriedades especificado, que representa um mapa de nomes de propriedade para EntityProperty valores tipados por dados.

void setEtag(String etag)

Define o valor ETag a ser verificado para a entidade. Esse valor é usado para determinar se a entidade de tabela foi alterada desde a última leitura do armazenamento do Microsoft Azure. O cliente não pode atualizar esse valor no serviço.

void setPartitionKey(String partitionKey)

Define o valor PartitionKey para a entidade.

void setRowKey(String rowKey)

Define o valor RowKey para a entidade.

void setTimestamp(Date timeStamp)

Define o valor de carimbo de data/hora da entidade. Observe que o carimbo de data/hora é uma propriedade somente leitura no serviço e não deve ser definido pelo usuário.

HashMap<String, EntityProperty> writeEntity(OperationContext opContext)

Retorna um mapa de nomes de propriedade para EntityProperty valores tipados de dados que representam o conteúdo serializado da instância de entidade de tabela.

Detalhes do método

getEtag

public String getEtag()

Obtém o valor ETag a ser verificado para a entidade. Esse valor é usado para determinar se a entidade de tabela foi alterada desde a última leitura do armazenamento do Microsoft Azure. O cliente não pode atualizar esse valor no serviço.

Returns:

Um String que representa a ETag para a entidade.

getPartitionKey

public String getPartitionKey()

Obtém o valor PartitionKey da entidade.

Returns:

Um String que representa o valor PartitionKey para a entidade.

getRowKey

public String getRowKey()

Obtém o valor RowKey da entidade.

Returns:

Um String que representa o valor RowKey para a entidade.

getTimestamp

public Date getTimestamp()

Obtém o carimbo de data/hora da entidade. O servidor gerencia o valor de Timestamp, que não pode ser modificado.

Returns:

Um java.util.Date objeto que representa o valor de carimbo de data/hora da entidade.

readEntity

public void readEntity(HashMap properties, OperationContext opContext)

Preenche uma instância do objeto que está implementando TableEntity usando o parâmetro de propriedades especificado, que representa um mapa de nomes de propriedade para EntityProperty valores tipados por dados.

Parameters:

properties - O java.util.HashMap de String para EntityProperty dados digitados valores a serem usados para preencher a instância de entidade de tabela.
opContext - Um OperationContext objeto usado para acompanhar a execução da operação.

Throws:

StorageException - Se ocorrer um erro durante a operação.

setEtag

public void setEtag(String etag)

Define o valor ETag a ser verificado para a entidade. Esse valor é usado para determinar se a entidade de tabela foi alterada desde a última leitura do armazenamento do Microsoft Azure. O cliente não pode atualizar esse valor no serviço.

Parameters:

etag - Um String que especifica a ETag a ser definida para a entidade.

setPartitionKey

public void setPartitionKey(String partitionKey)

Define o valor PartitionKey para a entidade.

Parameters:

partitionKey - Um String que especifica o valor PartitionKey a ser definido para a entidade.

setRowKey

public void setRowKey(String rowKey)

Define o valor RowKey para a entidade.

Parameters:

rowKey - Um String que especifica o valor RowKey a ser definido para a entidade.

setTimestamp

public void setTimestamp(Date timeStamp)

Define o valor de carimbo de data/hora da entidade. Observe que o carimbo de data/hora é uma propriedade somente leitura no serviço e não deve ser definido pelo usuário.

Parameters:

timeStamp - Um java.util.Date que especifica o valor de carimbo de data/hora a ser definido para a entidade.

writeEntity

public HashMap writeEntity(OperationContext opContext)

Retorna um mapa de nomes de propriedade para EntityProperty valores tipados de dados que representam o conteúdo serializado da instância de entidade de tabela.

Parameters:

opContext - Um OperationContext objeto usado para acompanhar a execução da operação.

Returns:

Um java.util.HashMap de nomes de String propriedade para EntityProperty valores digitados por dados que representam as propriedades da entidade de tabela.

Throws:

StorageException - Se ocorrer um erro durante a operação.

Aplica-se a