Relacionamento no Hibernate

Boa Tarde pessoal, estou com umas dúvidas referente ao relacionamento de tabelas no Hibernate, minha dúvida é o seguinte. Estou fazendo um sisteminha bem simples Bancário.
Possuo um Banco e uma Agencia, onde um Banco pode ter várias Agencias e uma Agencia apenas um Banco, assim como que ficaria as classes?

Eu fiz assim mas não sei se tá certo.

[code]import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

@Entity
@Table(name = “dbo.Banco”)
public class Banco {
@Id
private int numeroBanco;
private String nomeBanco;

public Banco(int numeroBanco, String nomeBanco) {
	this.numeroBanco = numeroBanco;
	this.nomeBanco = nomeBanco;
}
public int getNumeroBanco() {
	return numeroBanco;
}
public void setNumeroBanco(int numeroBanco) {
	this.numeroBanco = numeroBanco;
}
public String getNomeBanco() {
	return nomeBanco;
}
public void setNomeBanco(String nomeBanco) {
	this.nomeBanco = nomeBanco;
}	

}
[/code]

[code]package Modelo;

import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import org.hibernate.annotations.Cascade;
import org.hibernate.annotations.CascadeType;

@Entity
@Table(name = “dbo.agencia”)
public class Agencia {
@Id
private int numeroAgencia;
private String cidade;
private String estado;
@OneToMany(mappedBy=“Banco”)
@Cascade(CascadeType.ALL)
private Banco banco;

public Agencia(){
	
}

public Agencia(int numeroAgencia, String cidade, String estado, Banco banco) {
	this.numeroAgencia = numeroAgencia;
	this.cidade = cidade;
	this.estado = estado;
	this.banco = banco;
}

public int getNumeroAgencia() {
	return numeroAgencia;
}

public void setNumeroAgencia(int numeroAgencia) {
	this.numeroAgencia = numeroAgencia;
}

public String getCidade() {
	return cidade;
}

public void setCidade(String cidade) {
	this.cidade = cidade;
}

public String getEstado() {
	return estado;
}

public void setEstado(String estado) {
	this.estado = estado;
}

public Banco getBanco() {
	return banco;
}

public void setBanco(Banco banco) {
	this.banco = banco;
}

}
[/code]

Como que ficaria o relacionamento.
Obrigado.

Assim ficaria mais correto:

@Entity  
@Table(name = "dbo.Banco")  
public class Banco {

  @OneToMany(mappedBy="banco")
  private List<Agencia> agencias;

 //resto dos métodos e atributos

} 

@Entity  
@Table(name = "dbo.agencia")  
public class Agencia {  

    @ManyToOne
    @JoinColumn(name="id_banco")
    private Banco banco;      

    //resto dos métodos e atributos
}

O possuidor do relacionamento deve ser a entidade que tem muitos…

Abraços…

Ao ececutar a classe Banco ele dá um erro.

[code]package Modelo;

import java.util.List;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;

@Entity
@Table(name = “dbo.Banco”)
public class Banco {
@Id
private int numeroBanco;
private String nomeBanco;

@OneToMany(mappedBy="dbo.banco")   
private List<Agencia> agencias;

public List<Agencia> getAgencias() {
	return agencias;
}
public void setAgencias(List<Agencia> agencias) {
	this.agencias = agencias;
}
public String getNomeBanco() {
	return nomeBanco;
}
public void setNomeBanco(String nomeBanco) {
	this.nomeBanco = nomeBanco;
}
public Banco(int numeroBanco, String nomeBanco) {
	this.numeroBanco = numeroBanco;
	this.nomeBanco = nomeBanco;
}
public int getNumeroBanco() {
	return numeroBanco;
}
public void setNumeroBanco(int numeroBanco) {
	this.numeroBanco = numeroBanco;
}	

}[/code]

[code]package Modelo;

import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

@Entity
@Table(name = “dbo.agencia”)
public class Agencia {
@Id
private int numeroAgencia;
private String cidade;
private String estado;
@ManyToOne
@JoinColumn(name=“numeroBanco”)
private Banco banco;

public Agencia(){
	
}

public Agencia(int numeroAgencia, String cidade, String estado, Banco banco) {
	this.numeroAgencia = numeroAgencia;
	this.cidade = cidade;
	this.estado = estado;
	this.banco = banco;
}

public int getNumeroAgencia() {
	return numeroAgencia;
}

public void setNumeroAgencia(int numeroAgencia) {
	this.numeroAgencia = numeroAgencia;
}

public String getCidade() {
	return cidade;
}

public void setCidade(String cidade) {
	this.cidade = cidade;
}

public String getEstado() {
	return estado;
}

public void setEstado(String estado) {
	this.estado = estado;
}

public Banco getBanco() {
	return banco;
}

public void setBanco(Banco banco) {
	this.banco = banco;
}

}[/code]

[quote]Exception in thread “main” java.lang.ExceptionInInitializerError
at Visao.Main.main(Main.java:13)
Caused by: org.hibernate.AnnotationException: Use of @OneToMany or @ManyToMany targeting an unmapped class: Modelo.Banco.agencias[Modelo.Agencia][/quote]

Como está seu hibernate.cfg.xml ? Esta entidade está declarada lá ?? Pode ser esse o seu problema…

Eu uso o hibernate.properties, o acesso ao banco de dados está normal, só dá problema quando coloco esses relacionamentos, na classe banco mesmo eu adicionei vários sem problema no banco de dados antes de fazer o relacionamento.

hibernate.dialect org.hibernate.dialect.SQLServerDialect
hibernate.connection.driver_class com.microsoft.sqlserver.jdbc.SQLServerDriver
hibernate.connection.url jdbc:sqlserver://douglastc-note;databaseName=Java
hibernate.connection.username sa
hibernate.connection.password 3299

Poste aí suas classes… Onde você cria seu SessionFactory, onde você faz a persistência, a classe onde deu este erro…para ficar mais fácil do pessoal te ajudar…