Se é possivel usando XML

24 respostas
vcsmetallica

Salve galera!!!

Galera, queria saber se é possivel eu ler um XML criar um objeto com ele e depois usar esse objeto com Spring e Hibernte.

Por exemplo, eu tenho um XML onde tenho a descricao da minha classe Cliente.
Leio o XML e transformo ele em um objeto Cliente.
Povoe Esse cliente meu e agora quero persistir no banco.

é possivel?
Alguem ja fez alguma coisa parecida com isso?

Att

24 Respostas

alexvingg

O que você ta falando é ler um arquivo xml e criar uma classe .java ?
algo desse tipo ?

vcsmetallica

isso.

Coisa de louco!!!

alexvingg

Cara eu fiz uma coisa parecida so que não foi arquivo xml.

Tipo era uma classe .java que estava em outro projeto e ele fazia um parse dessa classe
e eu conseguia pegar todos os atributos dessa classe. Com esses atributos eu criava
outra classe para o mesmo projeto que o .java estava tipo isso. Se for ± isso
eu explico melhor como eu fiz vlw.

vcsmetallica

é ± isso mesmo, so qué assim, eu leio o XML e tenho que sair pegando as coisas dele e montar uma classe com isso em memoria.

O foda é isso!!!
]Tem doido para tudo nessa vida mesmo!!!

alexvingg

Cara eu fiz da seguinte maneira usei uma biblioteca que fez o parse de minha classe
e eu consegui pegar tudo q eu queria da classe e montava uma nova classe que eu criava
e ia escrevendo no arquivo. Deve ter alguma biblioteca que le esse xml e faz o q tu quer
eu não conheço.

vcsmetallica

Estava pesquisando aqui, vou ter que usar um pouco de reflexão.
Nao sei se vc usou isso.

alexvingg

Cara reflexão eu não usei pq minha classe era um arquivo .java sem ta compilado
eu tive que usar uma biblioteca q compila ela e faz um parse com isso eu tenho acesso a os metodos dela
aos atributos desse arquivo .java muito legal.

Tem essa aqui que eu usei
http://code.google.com/p/javaparser/

e essa que eu não consegui usar
http://ws.apache.org/jaxme/

vcsmetallica

Estou achando que essa primeira vai me ajudar, vou ver aqui.
Nao vou fechar esse topiico ainda, vou testar isso primeiro.

Att

ViniGodoy

Por favor, dê títulos descritivos ao seu tópico.
Até mesmo o título “XML” seria melhor que o título que você deu, pois daria uma remota idéia do que o tópico se trata.

Com XML não é possível e nem desejável fazer o que você quer. Mas se quer algo assim, use uma linguagem de script como o Groovy. Você poderá ter os arquivos .groovy em seu HD, carregar as classes lá implementadas e criar instâncias dela em tempo de execução. Se quiser ver um exemplo, veja o artigo do Mark:
http://www.pontov.com.br/site/java/47-javageral/165-utilizando-scripts-nos-jogos

vcsmetallica

Outra caoisa, vc usou essas classes sua com hibernate?

vcsmetallica

ViniGodoy:
Por favor, dê títulos descritivos ao seu tópico.
Até mesmo o título “XML” seria melhor que o título que você deu, pois daria uma remota idéia do que o tópico se trata.

Com XML não é possível e nem desejável fazer o que você quer. Mas se quer algo assim, use uma linguagem de script como o Groovy. Você poderá ter os arquivos .groovy em seu HD, carregar as classes lá implementadas e criar instâncias dela em tempo de execução. Se quiser ver um exemplo, veja o artigo do Mark:
http://www.pontov.com.br/site/java/47-javageral/165-utilizando-scripts-nos-jogos

Infelizmente tem que ser em java, vou morrer para fazer isso.
Os caras querem que seja assim.

snif snif

ViniGodoy

O Groovy irá substituir o XML e não o Java.

Vai ficar mais simples, flexível e poderoso do que fazer com XML. E dará consideravelmente menos manutenção.
Mostre essa opção para quem quer te pediu isso, pois não é barato escrever, ou manter, uma classe que não use scripts.

vcsmetallica

Vou dar uma estuda nisso, para poder ter bala na agulha para poder sugerir isso.

valeu.

R

vcsmetallica:
Salve galera!!!

Galera, queria saber se é possivel eu ler um XML criar um objeto com ele e depois usar esse objeto com Spring e Hibernte.

Por exemplo, eu tenho um XML onde tenho a descricao da minha classe Cliente.
Leio o XML e transformo ele em um objeto Cliente.
Povoe Esse cliente meu e agora quero persistir no banco.

é possivel?
Alguem ja fez alguma coisa parecida com isso?

Att

Se eu entendi bem, você tem um as informações de um cliente em XML e quer criar um objeto com essas informações?
Não seria só usar um parser de XML como XStream?

vcsmetallica

Nao doidao, é o seguinte, eu vou ler do meu XML todos as informações do meu sistema e vou montar a estrutura de dados.

So isso que vou ter que fazer!!!

R

Tem como você mostrar um exemplo do XML, fiquei curioso agora.

vcsmetallica

bom

Vai ser alguma coisa mais ou menos assim

<?xml version="1.0" encoding="UTF-8"?>
<Objetos xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="XMLSchema.xsd">
  <Entidade>
    <NomeDaEntidade>NomeDaEntidade</NomeDaEntidade>
    <Atributos>
      <Atributo>
        <NomeDoAtributo>NomeDoAtributo</NomeDoAtributo>
        <Tipo>
          <tipagem>CARARCTERES</tipagem>
          <valorPadrao>valorPadrao</valorPadrao>
        </Tipo>
        <campoObrigatorio>true</campoObrigatorio>
        <chavePrimaria>true</chavePrimaria>
      </Atributo>
    </Atributos>
    <Indices>
      <nomeDoAtributo>nomeDoAtributo</nomeDoAtributo>
      <indiceComposto>true</indiceComposto>
    </Indices>
    <ChaveEstrangeira>
      <NomeDaEntidadeReferente>NomeDaEntidadeReferente</NomeDaEntidadeReferente>
      <nomeDoAtributoReferente>nomeDoAtributoReferente</nomeDoAtributoReferente>
      <Tipo>
        <tipagem>CARARCTERES</tipagem>
        <valorPadrao>valorPadrao</valorPadrao>
      </Tipo>
    </ChaveEstrangeira>
  </Entidade>
</Objetos>

O pessoal esta ainda definindo o resto da coisa.

Att

R

Desculpa pela minha ignorância, mas qual seria a vantagem disso?

vcsmetallica

Entao,

Os caras querem que tudo que for modificação no sistema faça no XML.
Eu ja falei com eles que um sistema bem estruturado a manutenção é facil e não precisa ficar fazendo essas coisas doidas.

alexvingg

É cara acho que você vai ter que fazer o que o Rafael Viana
disse um parse do seu xml.

R

vcsmetallica:
Entao,

Os caras querem que tudo que for modificação no sistema faça no XML.
Eu ja falei com eles que um sistema bem estruturado a manutenção é facil e não precisa ficar fazendo essas coisas doidas.

Como assim qualquer alteração em XML??
Vocês vão programar todas as alterações em XML?

O cliente pede um relatório novo… voce geram um XML com a alteração e depois tem que fazer algo para interpretá-la??
É isso mesmo que entendi?

Agora não me lembro mas tem uma “linguagem” que vocẽ programa em XML e depois aquele XML vira um programa. (eu acho que li algo a respeito uma vez…)

vcsmetallica

O que vai ficar no XML é mais regras de acesso e criação de entidades. CRUD’s

A regra de negocio e relatorios vamos ter que fazer como qualquer simples mortal faz.

Att

alexvingg

Da uma olhada como fazer o parse do xml e monta essa sua classe e já foi.

vcsmetallica

Vou ver se coloco isso em um XSD para facilitar a minha vida

Criado 10 de agosto de 2011
Ultima resposta 11 de ago. de 2011
Respostas 24
Participantes 4