Passo a Passo do Aplicativo de Grade de Dados Simples

É possível conectar-se ao servidor de catálogos, obter a instância de ObjectGrid e usar a API ObjectMap.

Antes de Iniciar

Você deve criar uma grade de dados simples na interface com o usuário. Consulte Criando grades de dados Simples para obter mais informações.

Passo a Passo do Aplicativo de Grade de Dados Simples

  1. Conectando ao serviço de catálogo por meio da obtenção de uma instância do ClientClusterContext

    O servidor de catálogos que deve ser usado para conexão é exibido na página da interface com o usuário para a grade de dados simples que você criou. Clique em Grade de Dados > Grade de Dados Simples > my_simple_data_grid e use os valores que estão no campo Serviços de Catálogo.

    Para se conectar a um servidor de catálogos, use o método connect da API ObjectGridManager. O método connect que é usado requer apenas o terminal do servidor de catálogos no formato de hostname:port. É possível indicar diversos terminais do servidor de catálogos separando a lista de valores de hostname:port com vírgulas. O fragmento de código a seguir demonstra como se conectar a um servidor de catálogos e obter uma instância de ClientClusterContext:

    ClientClusterContext ccc = ObjectGridManagerFactory.getObjectGridManager().connect("myXC10.myhost.com:2809", null, null);

    O método connect tenta se conectar a cada dispositivo na lista até fazer uma conexão bem-sucedida, fornecendo failover automático se um dos outros dispositivos não responder.

    Se as conexões com os servidores de catálogos forem bem-sucedidas, o método connect retorna uma instância de ClientClusterContext. A instância do ClientClusterContext é necessária para a obtenção do ObjectGrid a partir da API do ObjectGridManager.
  2. Obtendo uma Instância do ObjectGrid

    Para obter uma instância do ObjectGrid, use o método getObjectGrid da API do ObjectGridManager. O método getObjectGrid requer a instância de ClientClusterContext e o nome da instância da grade de dados. A instância do ClientClusterContext é obtida durante a conexão com o servidor de catálogos. O nome da instância da grade de dados é o nome da grade de dados simples que você criou na interface com o usuário. O fragmento de código a seguir demonstra como obter a grade de dados chamando o método getObjectGrid da API ObjectGridManager.

    ObjectGrid grid = ObjectGridManagerFactory.getObjectGridManager().getObjectGrid(ccc, “my_simple_data_grid”);
  3. Obtendo uma Instância da Sessão

    É possível obter uma Sessão da instância do ObjectGrid obtida. Uma instância da Sessão é necessária para obter a instância do ObjectMap e executar a demarcação da transação. O fragmento de código a seguir demonstra como obter uma instância da Sessão chamando o método getSession da API ObjectGrid.

    Session sess = grid.getSession();
  4. Obtendo uma Instância do ObjectMap

    Após obter uma Sessão, é possível obter uma instância do ObjectMap a partir de uma instância da Sessão chamando o método getMap da API de Sessão. O nome da instância do mapa que você transmite ao método getMap tem o mesmo nome que a grade de dados que você criou na interface com o usuário. O fragmento de código a seguir demonstra como obter o ObjectMap chamando o método getMap da API de Sessão.

    ObjectMap map1 = sess.getMap("my_simple_data_grid");
  5. Usando os métodos ObjectMap

    Após a obtenção de um ObjectMap, é possível usar a API ObjectMap. Lembre-se de que a interface ObjectMap é um mapa transacional e requer demarcação de transação usando os métodos begin e commit da API Session. Se não houver demarcação de transação explícita no aplicativo, as operações do ObjectMap serão executadas com transações de confirmação automática.

    O fragmento de código a seguir demonstra como usar a API ObjectMap com uma transação de confirmação automática.

    map1.insert(key1, value1);

    As chaves usadas podem ser de um tipo Java existente, tal como java.lang.String ou Integer. Os valores podem consistir em qualquer tipo de objeto serializável.

    O fragmento de código a seguir demonstra como usar a API ObjectMap com demarcação de transação explícita.

    sess.begin();
    map1.insert(key1, value1);
    sess.commit();