![]() | |||
| fonte:http://www.gerenciandoblog.com.br/2009/08/onde-hospedar-arquivos-para-seu-blog.html |
Nas aplicações
empresariais além de persistir texto e número elas podem salvar
arquivos ou documentos. Persistir esse tipo de informação é muito
útil, por exemplo, um processo civil além de possuir informações
ter o arquivo escaneado ou um twett com uma imagem. No cassandra se
pode armazenar arquivos, no entanto, armazenar documentos muito
grandes um banco do tipo documento seja mais indicado nessas
ocasiões.
Para demonstrar esse
recurso será feita uma pequena aplicação, um álbum de fotografia,
a foto será exibida a partir do nome dado a foto. No caso ao
selecionar “Paris” será exibida a foto relacionada a esse nome.
| Ao usar a palavra chave "Paris" imagem como essa deveria aparecer |
Será utilizado para esse programa a plataforma SE 7 com Swing com o
Easy-Cassandra, para isso é necessário baixar a lib do
Easy-Cassandra além de suas dependências aqui.
O objeto que
representará a foto terá dois campos:
- Como a foto será exibida a partir do nome, então terá de ser única assim nossa chave
- O arquivo da foto
A tabela 1 mostra como
o Objeto foi modelado:
@ColumnFamilyValue
public class Photo {
@KeyValue
private String name;
private File picture;
//getter and setter
}
|
tabela1: Representação da Foto no java
public class PhotoDao {
private Persistence persistence;
public PhotoDao() {
persistence =
EasyCassandraManager.getPersistence("exemplo",
"localhost", 9160);
}
public void criar(Photo bean) {
persistence.insert(bean);
}
@SuppressWarnings("unchecked")
public List
return
persistence.findAll(Photo.class,ConsistencyLevelCQL.ALL);
}
}
|
tabela2:Dao para a Photo
Tão Logo esteja
rodando o Cassandra o objetivo agora será criar o KeySpace e a
Família de Coluna, entre no modo cliente do Cassandra e execute o
comando na tabela 3. É importante salientar que tanto a anotação
ColumnValue e ColumnFamilyValue o valor padrão é o nome do campo e
a classe respectivamente.
|
tabela3: criando o KeySpace e a Família de Coluna
![]() |
| Programa em execução |
Referência:
Easy-Cassandra: https://github.com/otaviojava/Easy-Cassandra/
Exemplo do programa de Álbum no Netbeans: https://github.com/otaviojava/Easy-Cassandra/downloads
Exemplo do programa Álbum no Eclipse: https://github.com/otaviojava/Easy-Cassandra/downloads
Exemplo do programa de Álbum no Netbeans: https://github.com/otaviojava/Easy-Cassandra/downloads
Exemplo do programa Álbum no Eclipse: https://github.com/otaviojava/Easy-Cassandra/downloads


Muito bom post otávio! Vou testar aqui assim que tiver um tempinho :)
ResponderExcluir