Vector

6 respostas
R

Eu tenho uma classe ItemPedido que possui os atributos: int codpedido e int coditem e tenho a classe Pedido que insere os meus itens em um vector assim…

public void insertelement(codpedido){ itens.addElement(new ItemPedido(codpedido,coditem)); }
minha pergunta é… da pra mandar o vector direto pro banco se ele possui o mesmo numero de colunas da tabela no BD? e se nao der, como eu faco pra pegar somente um atributo do vector? por exemplo vector(posicao).coditem , algo assim.

6 Respostas

M

primeiro, vamos corrigir sua modelagem OO, esta errada......... vc deveria ter uma classe Pedido q tem seu codido, e uma classe Item q teria seu codigo tb... e a classe Pedido ainda teria uma coleção de itens... ex:

public class Item {

   private int codigo;

   // getters e setters
}

public class Pedido {

   private int codigo;
   private java.util.Set pedidos;

   // getters e setters;
}
R
a classe Item ficaria isso né ?
public class Item {
	private int cod;
	private String descr;
	
	public int getcoditem(){
		return cod;
	}
	public String getdescr(){
		return descr;
	}
	public void setcoditem(int x){
		cod=x;
	}
		public void setdescr(String x){
		descr=x;
	}
}
mas e a classe pedido? juro que to tentando entender mas ta dificil, como eu vou usar essa colecao de itens ? como eu vou adicionar os itens do pedido nela ?? :???: :???:
M

a classe Pedido tem uma coleção de Itens, e métodos getters e setters para essa coleção, tu poderia ter o seguinte:

public class Pedido {

   private int codigo;
   private ArrayList itens;

   public Pedido() {}

   public Pedido( int codigo ) { 
   
      setCodigo( codigo );   
   }

   public Pedido( int codigo, ArrayList itens ) {

      setCodigo( codigo );
      setItens( itens );
   }

   public void setCodigo( int codigo ) { this.codigo = codigo; }
   public int getCodigo() { return codigo; }

   public void setItens( ArrayList itens ) { this.itens = itens; }
   public ArrayList getItens() { return itens; }

   public void addItem( Item item ) {  

      itens.add( item );
   }

   public Item getItem( int codigo ) {

      Iterator i = itens.iterator();

      while ( i.hasNext() ) {

         Item item = ( item ) i.next();

         if ( item.getCodigo() == codigo )
            return item;
      }

      return null; // nao encontrou o item
   }

}
R
Cada vez me confundo mais, como eu vou pegar um item (com todos os atributos) pra colocar no pedido? eu nao teria que apenas comparar o codigo do item com o codigo inserido pra ver se existe? pq aki...
public Item getItem( int codigo ) { 

      Iterator i = itens.iterator(); 

      while ( i.hasNext() ) { 

         Item item = ( item ) i.next(); 

         if ( item.getCodigo() == codigo ) 
            return item; 
      }
como eu iria verificar isso? eu nao teria que buscar todos os meus itens existentes no banco de dados? e como eu faria isso??

desculpa tar encomodando tanto mas é que eu preciso saber essas coisas, URGENTE 8O

M

estou partindo do pressuposto q o seu objeto ja foi populado com os dados do banco… :roll:

R

muito obrigado matheus pela ajuda, agora to conseguindo fazer as coisas funcionarem, apesar de tar uma tremenda gambiarra, mas sao apenas testes pra fazer um dessente como trabalho de facul!! VALEW!!! :lol:

Criado 24 de fevereiro de 2005
Ultima resposta 27 de fev. de 2005
Respostas 6
Participantes 2