[ Duvida ] Mapeamento Hibernate

Antes de tudo, quero agradecer ao pessoal que me ajudou a colocar o hibernate pra funcionar da ultima vez. Espero que eu um dia possa ter conhecimento suficiente para responder as perguntas de outras pessoas.

Estou com outra dúvida. Mapeamento de tabelas que tem chaves estrangeiras e tabelas de associação

tenho as seguintes tabelas num programinha básico que eu quero fazer

clientes ( cod_cli (pk), nome)
produtos ( cod_prod (pk), produto, valor )
vendas ( cod_venda (pk), cod_cli ( fk ), data_venda, vencimento, valor, data_pagamento)
itens_venda ( cod_venda ( fk ), cod_prod ( fk ), qtd, valor )

crud = “create, read, update, delete” ( as operações básicas com bd )

já consegui fazer o CRUD nos clientes e produtos. Porém não sei como fazer a questão de mapeamento de relacionamentos. Eu sei quais sao os relacionamentos nessas tabelas mas nao sei “ensinar” isso ao hibernate

clientes é “one-to-many” pra vendas

produtos é “many-to-many” pra vendas q cria a itens_venda

agora me expliquem por favor como faz isso… ja pesquisei no forum… ja fui no google mas nao consigo achar um tutorial nem um exemplo bom

obrigado antecipadamente.

aqui estão os mapeamentos
Produtos.hbm.xml

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>
	<class name="produtos.Produtos" table="produtos">
		<id name="id" column="cod_prod" type="string">
			<generator class="assigned" />
		</id>
		<property name="produto" type="string" column="produto" />
		<property name="valor" type="double" column="valor" />
	</class>
</hibernate-mapping>

Clientes.hbm.xml

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>
	<class name="clientes.Clientes" table="clientes">
		<id name="id" column="cod_cli">
			<generator class="native" />
		</id>
		<property name="nome" type="string" column="nome" />		
	</class>
</hibernate-mapping>

Vendas.hbm.xml


<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>
	<class name="vendas.Vendas" table="vendas">
		<id name="id" column="cod_venda" type="int">
			<generator class="assigned" />
		</id>
		<property name="datavenda" type="date" column="data_venda" />
		<property name="datarecebimento" type="date" column="data_recebimento" />
		<property name="valor" type="double" column="valor" />
		<property name="situacao" type="string" column="situacao" />
		<property name="datapg" type="date" column="data_pg" />
	</class>
</hibernate-mapping>