Reflexão JPA x XML

2 respostas
R

Srs, boa tarde.

Talvez, seja uma pergunta "básica". Tenho um arquivo em XML, com dados a serem gravados no BD. Os nodes, possuem o mesmo nome dos campos da tabela destino, e com isso, eu faço um Bulk Insert ( um método que uso para gravação JDBC )

Porém, eu fiz um mapeamento da tabela usando JPA, e me perguntei: Será se é possível, eu ler esses dados do XML, e jogar para o Bean e em seguida persisti-lo?

ex:
public class Cliente implements Serializable {
private static final long serialVersionUID = 1L;
    @Id
    @Basic(optional = false)
    @Column(name = "ID_CLIENTE")
    private Integer idCliente;
    
    ...set´s, get´s

}

e no meu xml tenho:

<?xml version="1.0" encoding="UTF-8"?>
<ROOT>
	<CLIENTE>
		<ID_CLIENTE> 000002</ID_CLIENTE>
	</CLIENTE>
</ROOT>

...e nesse caso, eu lendo os nodes, queria jogar o valor para o atributo do Bean...é possível?

2 Respostas

rmarin

Você pode mapear o mesmo bean com o XStream, ou JAXB sem problemas.

Se não for lidar com XSD’s, sugiro XStream, é mais simples e possui menos dependências.

Como no xml vc possui nomes diferentes do field, vc precisa usar anotações, ou configurar programaticamente. No site do XStream, existe um tutorial sobre anotaçoes, mas basicamente vc precisa colocar um @XStreamAlias(“ID_CLIENTE”) no filed idCliente.

R

BOm dia Marin…

Tranquilo, vou dah uma olhada.
Grato.

Criado 30 de outubro de 2008
Ultima resposta 31 de out. de 2008
Respostas 2
Participantes 2