Mapeamento Hibernate

2 respostas
D

Estou tendo dificuldades ao tentar mapear as minhas tabelas do bd. É o seguinte:
Na minha tabela produto_informação eu tenho as informações de um produto (filme).
Na minha tabela produto eu tenho informações adicionais relativas à tabela produto_informacao, inclusive o tipo de produto, que pode ser DVD ou Blu-ray, sendo que eu posso ter dois produtos ligados à um produto_informação: um sendo DVD e outro sendo Blu-ray. Segue abaixo as minhas tabelas e as minhas classes. Alguém pode mapeá-las usando hibernate annotations?

produto_informacao

CREATE TABLE produto_informacao (
	codigo INTEGER NOT NULL AUTO_INCREMENT,
	descricao VARCHAR(60) NOT NULL,
	ano_lancamento INTEGER,
	sinopse TEXT NOT NULL,
	duracao INTEGER NOT NULL DEFAULT '0',
	censura INTEGER NOT NULL DEFAULT '0',
	PRIMARY KEY(codigo)
);

produto

CREATE TABLE produto (
	codigo INTEGER NOT NULL AUTO_INCREMENT,
	cod_produto_informacao INTEGER NOT NULL,
	foto VARCHAR(10),
	preco FLOAT(5, 2) NOT NULL DEFAULT '0.00',
	quantidade INTEGER NOT NULL,
	tipo_produto INTEGER NOT NULL,
	PRIMARY KEY(codigo)
);

ProdutoInformacao

@Entity
@Table(name = "produto_informacao")
public class ProdutoInformacao implements Serializable {

	private static final long serialVersionUID = 1L;
	@Id
	@GeneratedValue(strategy = GenerationType.AUTO)
	@Column(name = "codigo")
	private Integer codigo;

	....................

	private List<Produto> produtos;

	........

}

Produto

@Entity
@Table(name = "produto")
public class Produto implements Serializable {

	private static final long serialVersionUID = 1L;
	@Id
	@GeneratedValue(strategy = GenerationType.AUTO)
	@Column(name = "codigo")
	private Integer codigo;

	......................................

	private ProdutoInformacao produtoInformacao;

	....................................

}

2 Respostas

desk

Olá,
então… vc precisa criar mapear isso dai.

static {
AnnotationConfigutarion cfg = new AnnotationConfigutarion() ;
cfg.addAnnotatedClass(nomedaclasse.class) ;
factory = cfg.buildSessionFactory() ;
}

Espero ter ajudado.
[]s

D

Eu estou querendo listar todas as informações do produto de codigo 2, por exemplo. Então vou ter q fazer um INNER JOIN nas duas tabelas. Esse mapeamento utilizando hibernate annotations nas minhas classes de modelo “onetomany” e “manytoone” que eu estou querendo fazer.

Criado 10 de setembro de 2010
Ultima resposta 11 de set. de 2010
Respostas 2
Participantes 2